如何设置网页全部灰色显示
创新互联公司专注于企业成都全网营销推广、网站重做改版、禹会网站定制设计、自适应品牌网站建设、H5页面制作、成都商城网站开发、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为禹会等各大城市提供网站开发制作服务。
爱刷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: 12px; margin: 0px; coclor: #000; background: #fff;
filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);}
在运用以上方法进行网页更改的时候,可能会遇到以下的问题,具体的解决方法仅供参考:
只是表示当前状态该样式未被调取,:visited 是选择器用于选取已被访问的链接,就是之前的链接地址已经被点击访问过了,那么这个样式才会被调取或者显示出效果来,没点击就不会调取
其实你给字体或者背景直接加一个red红色再进行操作一次,这样就会有更直观的体现
1、CSS Filter
使用CSS过滤器属性可能是最简单的方法把图像变成灰度。以往,IE浏览器有一个专有的CSS属性称为过滤应用自定义效果包括灰度。
现在,过滤器属性是CSS3规范的一部分,并支持在一些浏览器,Firefox、Chrome和Safari。以前,我们也提到Webkit过滤器,它不仅将图像变成灰色也可以变成褐色和模糊效果。
添加如下CSS样式可以将图像变成灰色
代码如下:
img {
-webkit-filter: grayscale(1);/* Webkit */
filter:gray;/* IE6-9 */
filter: grayscale(1);/* W3C */
}
支持IE6-9和Webkit浏览器(Chrome 18+, Safari 6.0+, and Opera 15+)
(注意:这段代码在Firefox上无效果。)
2、Javascript
第二种方法是通过使用JavaScript技术上应该支持所有JavaScript的浏览器,包括IE6以下
代码来自Ajax Blender.
代码如下:
varimgObj = document.getElementById('js-image');
functiongray(imgObj) {
varcanvas = document.createElement('canvas');
varcanvasContext = canvas.getContext('2d');
varimgW = imgObj.width;
varimgH = imgObj.height;
canvas.width = imgW;
canvas.height = imgH;
canvasContext.drawImage(imgObj, 0, 0);
varimgPixels = canvasContext.getImageData(0, 0, imgW, imgH);
for(vary = 0; y imgPixels.height; y++){
for(varx = 0; x imgPixels.width; x++){
vari = (y * 4) * imgPixels.width + x * 4;
varavg = (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);
returncanvas.toDataURL();
}
imgObj.src = gray(imgObj);
3、SVG
第三种方法来自SVG Filter.,你需要创建一个SVG文件,并将以下代码写在里面,保存命名为***.svg
代码如下:
svgxm .w3.org/2000/svg"
filterid="grayscale"
feColorMatrixtype="matrix"values="0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0"/
/filter
/svg
然后利用过滤器的属性,我们可以通过SVG文件中的元素的ID连接SVG文件
[code]
img {
filter:url('img/gray.svg#grayscale');
}
单在link 加入滤镜 filter:gray;使之变灰。 为何在鼠标放到连接上的时候 还是灰色? 如果只在hover加 学习目的:用同一张彩色图片为背景,在连接平常的状态,图片为灰,鼠标悬停在链接上时恢复色彩。