如何用css将页面变成灰色教程!

html-css010

如何用css将页面变成灰色教程!,第1张

为方便站点哀悼,特提供css滤镜代码,以表哀悼。以下为全站CSS代码。

html { filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)}

使用方法:这段代码可以变网页为黑白,将代码加到CSS最顶端就可以实现素装。建议全国站长动起来。为在地震中遇难的同胞哀悼。

如果网站没有使用CSS,可以在网页/模板的HTML代码<head>和</head>之间插入:

<style>

html{filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)}

</style>

有一些站长的网站可能使用这个css 不能生效,是因为网站没有使用最新的网页标准协议

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

请将网页最头部的<html>替换为以上代码。

有一些网站FLASH动画的颜色不能被CSS滤镜控制,可以在FLASH代码的<object …>和</object>之间插入:

<param value="false" name="menu"/>

<param value="opaque" name="wmode"/>

最简单的把页面变成灰色的代码是在head 之间加

<style type="text/css">

html {

FILTER: gray

}

</style>

一般的discuz论坛在 你的控制css 文件下修改

/images/header/header.css 这个文件

如何设置网页全部灰色显示

爱刷s0147 | 浏览 109 次

我有更好的答案

发布于2013-11-08 22:36最佳答案

<script language=JavaScript

document.body.style.filter = "progid:DXImageTransform.Microsoft.BasicImage(GrayScale=1)"

</script

方法二:把网页变成灰色显示的最简单的代码是在head之间加入如下代码:

<style type="text/css"

html {FILTER: gray}</style方法三:把网页变成灰色显示的另外一种方法是在head之间加入如下代码:

<style type="text/css"<!--BODY {filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)}--</style方法四:如果你的网站已经有CSS文件,那么只需要加入如下代码即可:

html { filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)}

方法五:我比较推荐这种做法,在CSS文件中加入如下代码即可:

html{filter:gray()}

html { filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)}

方法六:如果网站的CSS中已有BODY{},那么直接加入如下代码即可:

filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)比如:BODY {font-size: 12pxmargin: 0pxcoclor: #000background: #fff

filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)}

在运用以上方法进行网页更改的时候,可能会遇到以下的问题,具体的解决方法仅供参考:

IE10和IE11在图像滤镜方面还是比较坑爹的,不能执行filter滤镜,而且连svg滤镜也不支持,所以通常是用js来实现这个效果的。

具体可以参考下面这段代码:

var imgObj = document.getElementById('imgToGray')   

  

function gray(imgObj) {  

  var canvas = document.createElement('canvas')  

  var canvasContext = canvas.getContext('2d')  

  

  var imgW = imgObj.width  

  var imgH = imgObj.height  

  canvas.width = imgW  

  canvas.height = imgH  

  

  canvasContext.drawImage(imgObj, 0, 0)  

  var imgPixels = canvasContext.getImageData(0, 0, imgW, imgH)  

  

  for (var y = 0 y < imgPixels.height y++) {  

    for (var x = 0 x < imgPixels.width x++) {  

      var i = (y * 4) * imgPixels.width + x * 4  

      var avg = (imgPixels.data[i] + imgPixels.data[i + 1] + imgPixels.data[i + 2]) / 3  

      imgPixels.data[i] = avg  

      imgPixels.data[i + 1] = avg  

      imgPixels.data[i + 2] = avg  

    }  

  }  

  canvasContext.putImageData(imgPixels, 0, 0, 0, 0, imgPixels.width, imgPixels.height)  

  return canvas.toDataURL()  

}  

imgObj.src = gray(imgObj)

还有一些跨浏览器的解决方案,代码太多,不贴出来了,百度一下就能够找到。