详解HTML5浏览器兼容性解决方案


本文摘自PHP中文网,作者黄舟,侵删。

目前大部分浏览器均支持HTML5。但是部分低版本的浏览器对HTML5支持存在一些问题。

低版本浏览器支持HTML5

所有浏览器 ,对无法识别的元素会作为内联元素自动处理。因此可以采用如下方法教会浏览器 处理 “未知” 的 HTML 元素。

将 HTML5 元素定义为块元素

HTML5 定了 8 个新的 HTML 语义(semantic) 元素。所有这些元素都是 块级 元素。
为了能让旧版本的浏览器正确显示这些元素,你可以设置 CSS 的 display 属性值为 block:

1

2

header, section, footer, aside, nav, main, article, figure {    display: block;

}

为 HTML 添加新元素

下面的实例向 HTML 添加的新的元素,并为该元素定义样式,元素名为 <myElement>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

<!DOCTYPE html><html><head><meta charset="utf-8">

  <title>为 HTML 添加新元素</title>

  <script>document.createElement("myElement")</script>

  <style>

  myElement{   

  display: block;   

  background-color: #ddd;   

  padding: 50px;   

  font-size: 30px; 

  }

  </style>

  </head>

  <body>

  <h1>我的第一个标题</h1>

  <p>我的第一个段落。</p>

  <myElement>我的第一个新元素</myElement>

  </body>

  </html>

document.createElement(“myElement”) 是为 IE 浏览器添加新的元素。

Internet Explorer 浏览器问题

你可以使用以上方法为浏览器添加新的元素,但是IE8及以下版本无法支持此种方式。
我们可以使用 Sjoerd Visscher 创建的 “HTML5 Enabling JavaScript”, ” shiv” 来解决该问题:

阅读剩余部分

相关阅读 >>

基于 HTML5 canvas 的 3d 渲染引擎界面以及吸附等效果的运用

HTML5中messageevent以及sse的规范

HTML5规定在拖动被拖动数据时是否进行复制移动或链接的属性dropzone

h5微信支付之引入微信的js-sdk包失败的解决方法

HTML5/css3 经典案例-无插件拖拽上传图片(一)

HTML5 progress标签怎么用?progress标签的属性介绍

HTML5 dialog使用详解

移动端h5轮播插件swipe实例详解

HTML5本地存储storage实例详解

如何通过HTML5实现摇一摇的功能

更多相关阅读请进入《HTML5》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...