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

首頁 > 開發 > CSS > 正文

在IE6/7/8下識別html5標簽(讓老式瀏覽器識別html5)

2024-07-11 08:28:40
字體:
來源:轉載
供稿:網友
識別html5標簽:
html5添加了許多語義化的標簽,比如<nav></nav>,<aside></aside>,<article></article>什么的,當時看到這些標簽的時候心想html5估計很多老式IE瀏覽器都不支持,也沒多大重視,今天早上在群里面看到這些標簽的討論,心里頓時冒出一個疑惑,我在chrome等現代瀏覽器下面用這些標簽固然可以,那么我在IE6/7/8下用這些標簽會有什么效果了呢。于是立馬動手測試。

復制代碼
代碼如下:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<nav>nav</nav>
<aside>aside</aside>
</body>
</html>

效果出來了,不用想也知道這幾個瀏覽器是不認這幾個標簽的,因此只是出現了一行文本:nav aside;
而現代瀏覽器下這兩個是正常的塊級標簽,因此有換行。
我冒著試試看的心理,給nav和aside標簽加上樣式試試。

復制代碼
代碼如下:
nav {color: red;}
aside {color:blue;}

自然也不行,那么我加上class呢,并添加樣式呢。同樣宣告失敗。
網上搜了一番,原因是那些老式瀏覽器誕生的時候壓根兒還沒有這些標簽呢,自然就不認了。解決辦法也是有的,那就是在head里面添加如下腳本,讓瀏覽器識別到這是一個標簽,這樣css也就能順利渲染了。

復制代碼
代碼如下:
document.createElement("nav");
document.createElement("aside");

不過這樣寫了之后字體顏色是變了,仍然是內聯元素,所有還得把樣式定義為display:block,不過這些css代碼很多reset.css里已經有了。
為了支持所有新增html5標簽,你可以這么寫

復制代碼
代碼如下:
function html5(){
var i = 0, html5tag = ["aside", "figcaption", "figure", "footer", "header", "hgroup", "nav", "section"];
for(i in html5tag) {
document.createElement(html5tag[i]);
}
}

或者調用谷歌代碼庫:

復制代碼
代碼如下:
<!--[if lt ie 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
也有寫作
<!--[if lte IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
< ![endif]-->

這個html5.js功能應該更強大,不僅僅是讓老式瀏覽器識別html5標簽那么簡單。
聯想:自定義標簽
既然這些個html5里的標簽對于老式瀏覽器來說都是“陌生人”,那么我們自己創造出來的標簽性質上也是陌生人,于是我有加了一行代碼。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 眉山市| 上犹县| 成武县| 老河口市| 宜兰市| 永靖县| 将乐县| 盐边县| 宁乡县| 萍乡市| 南康市| 张家口市| 新密市| 南开区| 惠来县| 吉木乃县| 伽师县| 宁国市| 澜沧| 衢州市| 罗定市| 海丰县| 桐梓县| 平凉市| 应用必备| 桐乡市| 凤城市| 安新县| 正宁县| 阜城县| 巴彦淖尔市| 遂溪县| 醴陵市| 禄劝| 利辛县| 都江堰市| 宁陵县| 文昌市| 惠来县| 肥乡县| 家居|