ของคุณที่นี่:
<a href="#"><img src="img.jpg" /></a>
Css Grey:
img{
filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'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>#grayscale"); /* Firefox 10+, Firefox on Android */
filter: grayscale(100%);
-moz-filter: grayscale(100%);
-ms-filter: grayscale(100%);
-o-filter: grayscale(100%);
filter: gray; /* IE6-9 */
-webkit-filter: grayscale(100%); /* Chrome 19+, Safari 6+, Safari 6+ iOS */}
Ungray:
a:hover img{
filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'1 0 0 0 0, 0 1 0 0 0, 0 0 1 0 0, 0 0 0 1 0\'/></filter></svg>#grayscale");
filter: grayscale(0%);
-moz-filter: grayscale(0%);
-ms-filter: grayscale(0%);
-o-filter: grayscale(0%);
filter: none ; /* IE6-9 */
zoom:1; /* needed to trigger "hasLayout" in IE if no width or height is set */
-webkit-filter: grayscale(0%); /* Chrome 19+, Safari 6+, Safari 6+ iOS */
}
ฉันพบมันได้ที่: http://zkiwi.com/topic/chuyen-hinh-mau-thanh-trang-den-bang-css-nhu-the-nao
แก้ไข: IE10 + ไม่รองรับตัวกรอง DX เช่นเดียวกับ IE9 และก่อนหน้านี้ได้ทำไปแล้วและไม่รองรับตัวกรอง greyscale รุ่นที่ขึ้นต้น คุณสามารถแก้ไขได้ใช้หนึ่งในสองวิธีด้านล่าง:
- ตั้งค่า IE10 + ให้แสดงผลโดยใช้โหมดมาตรฐาน IE9 โดยใช้องค์ประกอบเมตาต่อไปนี้ในส่วนหัว:
<meta http-equiv="X-UA-Compatible" content="IE=9">
- ใช้การซ้อนทับ SVG ใน IE10 เพื่อให้บรรลุ greyscaling internet explorer 10 - วิธีการใช้ตัวกรองสีเทา