国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > CSS > 正文

應(yīng)用before/after偽類時如何CSS命名以及針對ie6/ie7瀏覽器兼容

2024-07-11 08:29:06
字體:
供稿:網(wǎng)友
一、訴說前言
before/after偽類相當(dāng)于在元素內(nèi)部插入兩個額外的標(biāo)簽,其最適合也是最推薦的應(yīng)用就是圖形生成。在一些精致的UI實現(xiàn)上,可以簡化HTML代碼,提高可讀性和可維護(hù)性。國外這兩個偽類應(yīng)用相當(dāng)?shù)钠占耙约芭d盛,不過貌似我們這邊前端er們普遍缺乏使用這兩個偽類的意識,要使用頂多也就是跟風(fēng)的“清除浮動”應(yīng)用。
我想,這可能受兼容性思維影響——IE6/7瀏覽器并不支持,還是等什么時候IE6/IE7換屆下臺的時候再說吧~~
雖然八尾九尾都是殘體,并不影響十尾的成型。一粒老鼠屎掉進(jìn)鍋里,你就真讓這一鍋紅燒肉毀了——把有翔的這部分給阿黃(中華田園犬)吃就可以了。
本文簡單展示我在實際項目中,應(yīng)用before/after偽類時候,如何CSS命名的,HTML有哪些處理,如何對付IE6, IE7瀏覽器的。

二、大致處理流程
1.CSS部分
類似這樣子的命名:

復(fù)制代碼
代碼如下:
.example:before, .example before {}
.example:after, .example after {}

一個有冒號,一個是空格分隔。前者IE8+及其他現(xiàn)代瀏覽器;后者為IE6-7準(zhǔn)備的。
2.HTML部分
如果before/after偽類元素含有content內(nèi)容(不是空字符),則content內(nèi)容在HTML標(biāo)簽上呈現(xiàn)(方便IE6/7下獲取),例如:

復(fù)制代碼
代碼如下:
<div class="example" data-content=""></div>

CSS部分的content屬性值應(yīng)該如下:

復(fù)制代碼
代碼如下:
.example:before, .example before { content: attr(data-content); ... }
.example:after, .example after { content: attr(data-content); ... }

3.JS部分
JS是為IE6/7準(zhǔn)備的,所做的事情很簡單,網(wǎng)元素內(nèi)部插入兩個元素,標(biāo)簽名為”before“或”after“或同時。方法代碼如下:

復(fù)制代碼
代碼如下:
var $beforeAfter = function(dom) {
if (document.querySelector || !dom && dom.nodeType !== 1) return;
var content = dom.getAttribute("data-content") || '';
var before = document.createElement("before")
, after = document.createElement("after");
// 內(nèi)部content
before.innerHTML = content;
after.innerHTML = content;
// 前后分別插入節(jié)點
dom.insertBefore(before, dom.firstChild);
dom.appendChild(after);
};

于是,您想要的效果就可以實現(xiàn)了,例如下面的例子。

三、實際應(yīng)用之含尖角的tip類提示效果
下面是效果圖,IE6下以及FireFox16下的效果截圖
IE6下tip類提示效果截圖 張鑫旭-鑫空間-鑫生活
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 巴南区| 营口市| 铜梁县| 宁海县| 大石桥市| 辽宁省| 乐平市| 梁平县| 玉龙| 象山县| 北流市| 荔浦县| 英山县| 呈贡县| 美姑县| 电白县| 饶平县| 上杭县| 资中县| 塘沽区| 遵义县| 泰顺县| 抚州市| 柯坪县| 乐昌市| 罗定市| 双柏县| 凌云县| 鹰潭市| 大渡口区| 甘德县| 延长县| 茶陵县| 武乡县| 清苑县| 来宾市| 溧阳市| 万载县| 德清县| 游戏| 太和县|