大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
你好;你可以在css中,将新标签的样式变成块状元素,然后在script中创建新标签。直接放出代码,如果您是IE6/IE7/IE8用户,可运行代码试试:如果不行,就不要在使用这些浏览器了,现在的浏览器有很多种,你可以重新下载一个浏览器,就像QQ浏览器就很好用,它的兼容性能很好,支持各种新的标签,效果都很好,它的体积小,功能强大,操作简单易懂,非常好用。谢谢望采纳。
创新互联建站专业为企业提供宁阳网站建设、宁阳做网站、宁阳网站设计、宁阳网站制作等企业网站建设、网页设计与制作、宁阳企业网站模板建站服务,10余年宁阳做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
解决兼容IE6\7\8不支持html5标签的几个方法:
1、javascript: document.createElenment("......")
IE6\7\8不支持的部分原因是,它们不认为footer是一个有效的html标签。那么我们把它“制造”成一个标签不就行了吗?最直接的办法当然是,javascript 的方式创建:document.createElenment("......")!
代码如下:
(function(){
var element=['header','footer','article','aside','section','nav','menu','hgroup','details','dialog','figure','figcaption'],
len=element.length;
while(len--){
document.createElement(element[i])
}
})();
这只是简单创建几典型的html5标签,让它们在IE6\7\8可以成为标签。
有人已经写了一个完整的js文件,你只需要引入既可,像这样:
!--[if lt ie 9]
script src=""/script
![endif]-- 也有写作
!--[if lte IE 9]
script src=""/script
![endif]--html5shiv和html5shim的区别只有"m"和"v",没有其它区别!当然这不是我说的。原文是:...the only difference is that "one has an m and one has a v - that's it."
这里要做一个特别的说明:就是IE特有的注释判断:
lte:就是Less than or equal to的简写,也就是小于或等于的意思。
lt :就是Less than的简写,也就是小于的意思。
gte:就是Greater than or equal to的简写,也就是大于或等于的意思。
gt :就是Greater than的简写,也就是大于的意思。
! : 就是不等于的意思,跟javascript里的不等于判断符相同
因为IE9虽然支持html5标签,但支持的不是很完整,所以,也可以写"lte",这取决于你的选择!
当然,不要忘了指定新建标签的display属性,大多情况下希望标签是block的:
代码如下:
header,footer,article,aside,section,nav,menu,hgroup,details,dialog,figure,figcaption{display:block}
2、嵌套标签的方法
其实说白了就是在,语义化的html5标签内嵌套div等可用标签,然后只给div写样式,我是不赞成这样的写法的。这样做还不如,给标签一个有语义化的id或者class!
代码如下:
!--[if lt IE 9]
style
body * .section {
color: #ff0;
}
/style
![endif]--
style
section .section { color: #f00;
}
/style
sectiondiv class="section"内容测试.../div/section
但如果类似于这样的结构,用用也无防:
代码如下:
nav
ul class="test"
li/li
li/li
li/li
/ul
/nav
3、IE条件注释
代码如下:
!--[if lt IE 9]div class="section"![endif]--
!--[if IE 9]section class="section"![endif]--
!--[if !IE]!--section class="section"!--![endif]--
......
!--[if lt IE 9]/div![endif]--
!--[if IE 9]/section![endif]--
!--[if !IE]!--/section!--![endif]--
再看一遍IE特有的注释判断:
lte:就是Less than or equal to的简写,也就是小于或等于的意思。
lt :就是Less than的简写,也就是小于的意思。
gte:就是Greater than or equal to的简写,也就是大于或等于的意思。
gt :就是Greater than的简写,也就是大于的意思。
! : 就是不等于的意思,跟javascript里的不等于判断符相同
相信大家都明白,这是怎么回事!这是一个更加蛋疼的办法!大量的html代码使原本想语义化的代码更加混乱不堪。而且要对样式的书写也不利。
4、使用xmlns定义文档的命我空间
xmlns即是XHTML namespace的缩写,也就是所谓的“命名空间”。与DOCTYPE声明一样,xmlns也属于一种声明。与HTML文档中仍然存在DOCTYPE声明不一样的是,在HTML文档是不存在xmlns的,我们平常所见到的xmlns都是出现在XHTML文档中的。
html xmlns="" lang="en" 这是xhtml原有的命名空间,到了html5以后被简化了,。
html lang="en"来自Elco Klingen日志的方法一开始引起了广泛的关注。该技术包含了一个XML形式的命名空间,并使用了含有namespace前缀的元素,例如:
代码如下:
!DOCTYPE HTML
html xmlns="" xmlns:html5=""
body
html5:section
!-- content --
/html5:section
/body
/html
:html5这个前缀并不是一个标准的写法,你也可以用其它字符代替:hl5也是可以的。有了前缀之后,IE会识别新的元素,从而可以应用样式。在其他浏览器中一样有效,那么最后就成功地在各个浏览器中构建了一样的元素和一样的样式。
这个方法很明显有个缺陷:必须在HTML文档中使用XML格式的命名空间,同样也需要在css中这么做:
代码如下:
html5\:section {
display: block;
}
那么对js的兼容性设置?下面是个测试deml
代码如下:
!DOCTYPE HTML
html xmlns="" xmlns:html5=""
head
title;html5/title
meta charset="gb2312"
style
html5\:section { display: block; width:100px; height:50px; background:#f00; border: 1px solid blue; color: #ff0; }
/style
script
window.onload = function(){
alert(document.getElementById("test").innerHTML + "---id")
alert(document.getElementsByTagName("section")[0].innerHTML + "---TagName")
alert(document.getElementsByTagName("SECTION")[0].innerHTML + "---大写")
}
/script
/head
body
html5:section id="test"内容/html5:section
/body
/html
测试结果,IE6\7\8均测试通过,但fixfox和chrome里只有id能获取到,所以这种方法同样不是一个可取的方法!
很好用啊。下面列举一下优点吧:
第一大原因: 它是未来,开始用吧!
最大的原因今天你就开始使用HTML5是因为它是未来,不要掉队了!HTML5不会往每个方向发展,但是更多的元素已经被很多公司采用,并且开始着手开发。HTML5其实更像HTML,它不是一个新的技术需要你重新学习!如果你开发XHTML strict的话你现在就已经在开发HTML5了。为什么不更完整的享受HTML5的功能呢?
你实际上没有任何借口不接受HTML5。事实上我唯一一个原因使用HTML5是因为它书写代码简单清晰。其它的特性其实我也没有真正使用。你可以考虑现在开始使用HTML5书写代码,它能帮助你改变书写代码的方式及其设计方式。开始用HTML5代码编写web应用吧,说不定下一个移动应用或者游戏应用就是用HTML5开发的!
第二大原因: 移动,移动还是移动
你可以称之为“直觉”,但是我认为移动技术将会变得更加的流行。我知道,这里有些非常疯狂的猜测,有些可能你也想到了– Mobile是一个时尚!移动设备将占领世界。更多的接受移动设备将会增长的非常迅速。这意味着更多的用户会选择使用移动设备访问网站或者web应用。HTML5是最移动化的开发工具。随着Adobe宣布放弃移动flash开发,你将会考虑使用HTML5来开发webp应用。当手机浏览器完全支持HTML5那么开发移动项目将会和设计更小的触摸显示一样简单。这里有很多的meta标签允许你优化移动:viewport: 允许你定义viewport宽度和缩放设置;全屏浏览器: ISO指定的数值允许Apple设备全屏模式显示;Home screen icons: 就像桌面收藏,这些图标可以用来添加收藏到IOS和Android移动设备的首页。
第三大原因:遗留及其跨浏览器支持
你的现代流行浏览器都支持HTML5(Chrome,Firefox,Safari,IE9和Opera),并且创建了HTML5 doctype这样所有的浏览器,即使非常老非常令人厌恶浏览器像IE6都可以使用。但是因为老的浏览器能够识别doctype并不意味它可以处理HTML5标签和功能。幸运的是,HTML5已经使得开发更加简单了,更多支持更多浏览器,这样老的IE浏览器可以通过添加javascript代码来使用新的元素:
!--[iflt IE 9] script src=""/script![endif]--
第四大原因:游戏开发
没错, 你可以使用HTML5的canvas开发游戏。HTML5提供了一个非常伟大的,移动友好的方式去开发有趣互动的游戏。如果你开发Flash游戏,你就会喜欢上HTML5的游戏开发。
Script-tutorials目前提供了4个不部分的HTML5游戏开发教程,这里看看他们开发的有趣游戏:
HTML5 Gaming Development Lesson One
HTML5 Gaming Development Lesson Two
HTML5 Gaming Development Lesson Three
HTML5 Gaming Development Lesson Four
第五大原因:更好的互动
我们都喜欢更好的互动,我们都喜欢对于用户有反馈的动态网站,用户可以享受互动的过程。输入canvas,HTML5的画图标签允许你做更多的互动和动画,就像我们使用Flash达到的效果。
除了canvas,HTML5同样也拥有很多API允许你创建更加好的用户体验并且更加动态的web应用程序。 这里有一个列表:
Drag and Drop (DnD)
Offline storage database
Browser history management
document editing
Timed media playback
第六大原因:更聪明的存储
HTML5中最酷的特性就是本地存储。有一点像比较老的技术cookie和客户端数据库的融合。它比cooke更好用因为支持多个windows存储,它拥有更好的安全和性能,即使浏览器关闭后也可以保存。
因为它是个客户端的数据库,你不用担心用户删除任何cookie,并且所有主流浏览器都支持。
本地存储对于很多情况来说都不错,它是HTML5工具中一个不需要第三方插件实现的。能够保存数据到用户的浏览器中意味你可以简单的创建一些应用特性例如:保存用户信息,缓存数据,加载用户上一次的应用状态。
第七大原因:更清晰的代码
如果你对于简答,优雅,容易阅读的代码有所偏好的话,HTML5绝对是一个为你量身定做的东西。HTML5允许你写出简单清晰富于描述的代码。符合语义学的代码允许你分开样式和内容。看看这个典型的简单拥有导航的heaer代码:div id="header"h1Header Text/h1 div id="nav" ul liahref="#"Link/a/li liahref="#"Link/a/li liahref="#"Link/a/li /ul/div/div是不是很简单?但是使用HTML5后会使得代码更加简单并且富有含义:header h1Header Text/h1 nav ul liahref="#"Link/a/li liahref="#"Link/a/li liahref="#"Link/a/li /ul/nav/header
使用HTML5你可以通过使用语义学的HTML header标签描述内容来最后解决你的div及其class定义问题。 以前你需要大量的使用div来定义每一个页面内容区域,但是使用新的section,article,header,footer,aside和nav标签,需要你让你的代码更加清晰易于阅读。
第八大原因:Doctype
没错,就是doctype,没有更多内容了。是不是非常简答?不需要拷贝粘贴一堆无法理解的代码,也没有多余的head标签。最大的好消息在于,除了简单,它能在每一个浏览器中正常工作即使是名声狼藉的IE6。
第九大原因:视频和音频支持
忘了flash和其它第三方应用吧,让你的视频和音频通过HTML5标签video和audio来访问资源。正确播放媒体一直都是一个非常可怕的事情,你需要使用embed和object标签,并且为了它们能正确播放必须赋予一大堆的参数。你的媒体标签将会非常复杂,大堆得令人迷惑的代码。而且HTML5视频和音频标签基本将他们视为图片:video src=”"/。但是其它参数例如宽度和高度或者自动播放呢?不必担心,只需要像其它HTML标签一样定义:video src=”url”width=”640px” height=”380px” autoplay/。
实际上这个过程非常简单,然而我们的老浏览器可能并不喜欢我们的HTML5,你需要添加更多代码来让他们正确工作。但是这个代码还是比embed和object来的简单的多。
第十大原因:易用性
俩个原因使得使用HTML5创建网站更加简单:语义上及其ARIA。新的HTML标签像header, footer,nav,section, aside等等,使得阅读者更加容易去访问内容。在以前,即使你定义了class或者ID你的阅读者也没有办法去了解给出的一个div究竟是什么。使用新的语义学的定义标签,你可以更好的了解HTML文档,并且创建一个更好的使用体验。
ARIA是一个W3C的标准主要用来对HTML文章中的元素指定“角色“,通过角色属性来创建重要的页面地形例如,header,footer,navigation或者aritcle很有必要。这一点曾经被忽略掉了并且没有被广泛使用,因为事实上并不验证。然而,HTML5将会验证这样属性。同时,HTML5将会内建这些角色并且无法不覆盖。
IE6是XP系统时代的产品,实在是太老了,并不支持所有HTML5的标签。但是可以用第三方的插件可使得IE6浏览器兼容HTML5。比如gg的html5shiv。可以把HTML5的新元素转换成IE6认识的内容。使用方式也很简单,只需要在你的head中调用这段代码就行了:
head
!--if lt IE 9]
script src=""/script
![endif]--
/head
你说的这两个标签,ie6支持,
但很多html5标签ie6都不支持,比如说canvas,audio,video
具体参阅w3school