CSS3 是 Cascading Style Sheets 標準的最新版本,它引入了許多新的特性和標記,比如圓角、陰影、漸變等等。不過,由于有些網站用戶群中還存在使用 IE7 瀏覽器的情況,因此在 CSS3 設計樣式時,考慮兼容 IE7 是非常必要的。
下面我們就來介紹一些 CSS3 兼容 IE7 的解決方案:
/* 解決 IE7 中不支持的屬性 */ selector { -ms-transform: property value; /* 兼容 IE9+ */ zoom: 1; /* 兼容 IE6+ */ } /* 解決 IE7 中不支持的選擇器 */ selector:first-child+* { property: value; } /* 解決 IE7 中不支持的偽類 */ selector:hover { property: value; } /* 解決 IE7 中不支持的屬性值 */ selector { background: transparent url('image.png') no-repeat fixed 0 0; background: url('image.png') no-repeat fixed 0 0; /* IE7 */ } /* 解決 IE7 中不支持的單位 */ selector { width: 100px; width: 10rem; /* IE9+ */ } /* 解決 IE7 中不支持的漸變 */ selector { background: #fff; background: -ms-linear-gradient(top, #ccc, #eee); /* IE9+ */ background: linear-gradient(to bottom, #ccc, #eee); /* 非 IE9+ */ } /* 解決 IE7 中不支持的圓角 */ selector { border-radius: 10px; -moz-border-radius: 10px; /* Firefox */ -webkit-border-radius: 10px; /* Safari/Chrome */ behavior: url(border-radius.htc); /* IE7+ */ }
有時候,由于 IE7 中的 CSS 渲染引擎與標準有些出入,我們需要通過一些 hack 來使樣式在 IE7 中正確展現。下面介紹一些常見的 IE7 hack:
/* \9 表示 IE7 及以下版本,注意要放在屬性值的末尾 */ selector { property: value\9; } /* * 表示 IE7 及以下版本,注意要放在屬性名后面 */ selector { property*: value; } /* _ 表示 IE6;* 表示 IE7 及以下版本 */ selector { property: value\9; /* IE7 */ property: value\0/; /* IE8 */ property: value\9\0/; /* IE9 */ *property: value; /* IE7 及以下版本 */ _property: value; /* IE6 */ } /* 針對 IE7 的文本清晰度 hack */ selector { -ms-interpolation-mode: nearest-neighbor; /* 取消文本平滑 */ } /* 針對 IE7 的以下元素的行高 hack */ selector { *vertical-align: baseline; *display: inline-block; *zoom: 1; }
總的來說,兼容 IE7 是前端開發的一項必備技能。通過對 CSS3 的學習和熟練應用一些 hack 技巧,我們可以更好地制作出友好的網站,并向更多用戶展示我們的優秀作品。
上一篇css3 刪除按鈕樣式
下一篇mysql查詢表中總人數