对于南京大屠杀这样需要悼念的日子,一般在全国哀悼日,大地震的日子,清明节,我们都会让自己的网站全站灰色,以表示对逝者的悼念。以及一些影响力很大的伟人逝世或纪念日的时候,身为站长的我们都会让自己的网站的全部网页变成灰色(黑白色),以表示我们对逝者的悼念。很多人也都想把自己的网站弄成全站黑白来表示自己的哀悼之情。还有其他特殊原因(比如汶川大地震)对部分事件表示哀悼,所以需要把整个网站设置为灰色或者黑白方格。那么今天就说说,通过几行简单的代码,来实现这个功能。
下面我就附上开启全站黑白的教程和代码吧,只需要一句 CSS 定义即可,要将整个网站变成灰色调,你不用去一张一张的改图片的色调,只需要在 css 文件的 html 节点上添加下面一条定义。
html {-webkit-filter: grayscale(100%);}
如果你的网站没有引用 css 文件,那么就可以直接引用下面这段 html 代码
<style type="text/css">html {-webkit-filter: grayscale(100%);}</style>
上面的 CSS 代码可能只对主流浏览器支持,如果你需要支持 QQ 浏览器、360 浏览器、IE 浏览器等等其他浏览器需要使用下面这段:
<style>
html {
-webkit-filter: grayscale(100%);
-moz-filter: grayscale(100%);
-ms-filter: grayscale(100%);
-o-filter: grayscale(100%);
filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);
_filter:none;
}
</style>
将代码放入前即可让对应网页变黑灰色!filter 是滤镜的意思,filter:gray 的意思就是说给页面加上一个灰度的滤镜,所以 html 里面的所有内容都会变成黑白的了。不过这个滤镜对于 chrome 和 safari 浏览器是无效的,所以下面会有一行-webkit-filter: grayscale(100%);这个样式是专属于使用 webkit 内核的浏览器的,意思和 FILTER: gray;差不多,只是写法不同罢了。
下面这段代码可以变网页为黑白,将代码加到 CSS 最顶端就可以实现素装,如果网站没有使用 CSS,可以在网页/模板的 HTML 代码
和 之间插入:<style>html {filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);-webkit-filter: grayscale(100%);}</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">
请将网页最头部的替换为以上代码。有一些网站 FLASH 动画的颜色不能被 CSS 滤镜控制,可以在 FLASH 代码的之间插入:
<param value="false" name="menu"/>
<param value="opaque" name="wmode"/>
但经测试上面单纯 CSS 方法不兼容 IE10、11 浏览器,所以配合 grayscale.js 这个插件,可以完美兼容所有浏览器,这里我制作了个一键变黑白的按钮, 按钮代码用到了 JQ,需引用,可点击下面看效果
<style>
/* 特殊日子 全站灰色 */
.site-gray, .site-gray *{
filter: gray !important;
filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);
filter: grayscale(100%);
-webkit-filter: grayscale(100%);
-moz-filter: grayscale(100%);
-ms-filter: grayscale(100%);
-o-filter: grayscale(100%);
}
</style>
<a href="javascript:;" class="site-gray" data-gray="0">网站变灰</a>
<!-- 特殊日子IE10及其以上浏览器 全站灰色 -->
<script src="js/grayscale.js"></script>
<script>
var navStr = navigator.userAgent.toLowerCase();
$(".site-gray").click(function(){
var gray = $(this).attr("data-gray");
if( gray == 0 )
{
if(navStr.indexOf("msie 10.0")!==-1||navStr.indexOf("rv:11.0")!==-1){ // 判断是IE10或者IE11
grayscale(document.body);
grayscale(document.getElementsByTagName("img"));
}
$("html").addClass("site-gray");
$(this).attr("data-gray", 1);
}
else
{
if(navStr.indexOf("msie 10.0")!==-1||navStr.indexOf("rv:11.0")!==-1){ // 判断是IE10或者IE11
grayscale.reset(document.body);
grayscale.reset(document.getElementsByTagName("img"));
}
$("html").removeClass("site-gray");
$(this).attr("data-gray", 0);
}
});
</script>
专业提供WordPress主题安装、深度汉化、加速优化等各类网站建设服务,详询在线客服!