• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > 详细介绍HTML5新标签的兼容性处理(图)

详细介绍HTML5新标签的兼容性处理(图)

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含 HTML5,新标签,兼容性处理等相关知识,匿名希望在学习及工作中可以帮助到您
HTML5新的语义标签尽管有很多的好处,但是在低版本的老IE浏览器中还是存在兼容性问题的,常常让人感到头疼,到底是大胆的使用新标签还是使用传统的大量的DIV无义标签?今天就简单的看看H5新标签的兼容性处理方式。

首先来看一小段简单的代码:

HTML代码:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>测试H5新标签兼容性</title>
 
    <style>
        header, footer{width:50px; height: 50px; background-color: #f00;}
    </style>
</head>
<body>
<header id="header">header</header>
<footer id="footer">footer</footer>
 
</body>
</html>

Google浏览器下:

1344.png

IE6浏览器下:

1345.png

很明显,header和footer在支持H5新标签的浏览器下已块级元素呈现,而在IE8及以下的浏览器中以文本呈现并且样式没有起作用,说明不被支持,那如何解决呢?

首先,第一种方法便是使用DOM操作来添加这些标签,既然浏览器不支持,那我自己来创建一个:

HTML代码:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>测试H5新标签兼容性</title>
    <script>
        document.createElement('header');
        document.createElement('footer');
    </script>
    <style>
        header, footer{display: block; width:50px; height: 50px; background-color: #f00;}
    </style>
</head>
<body>
<header id="header">header</header>
<footer id="footer">footer</footer>
 
</body>
</html>

这时候,我们再来看看IE6浏览器显示的效果:

1346.png

红色的背景色可以显示出来了,说明通过document.createElement()这一方法是可行的,那为什么样式的宽高不起作用呢?因为添加的元素是内联元素,内联元素是没有宽高的,在了解这一点以后,我们再给案例中的header和footer添加一个"display: block;"属性,看看效果会有什么变化。

<style>
    header, footer{display: block; 
                   width:50px; height: 50px; 
                   background-color: #f00;}
</style>

IE6浏览器显示的效果:

1347.png

现在显示的效果跟我们需要的就完全一样了,也就是说通过这种方法可以解决H5新标签在老IE浏览器中的兼容问题。但是,另外一个问题,那么多的新标签,如果每个都要通过这种方法去生产的话,是不是太麻烦了呢?

所以,我们现在介绍第二种方式,直接借用前辈大牛封装好的js库 --- html5shiv.js

HTML代码:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>测试H5新标签兼容性</title>
    <script src="js/html5shiv.js"></script>
 
</head>
<body>
<header id="header">header</header>
<footer id="footer">footer</footer>
<script src="js/jquery-1.11.0.min.js"></script>
 
<script>
    $('#header').css('color','#f00');
    $('#footer').css({'width':'100px','height':'100px',
                      'border':'1px solid #ddd',
                      'backgroundColor':'#f00'});
    $('#header').html('我是一只小小鸟');
</script>
 
</body>
</html>

那我们现在直接打开IE6浏览器看效果:

1348.png

完全可以实现我们想要的效果,而且操作更加的简单,代码量更少,大家不妨也可以在IE7和IE8浏览器中也测试一下。

以上就是详细介绍HTML5新标签的兼容性处理(图)的详细内容,更多请关注微课江湖其它相关文章!

您可能想查找下面的文章:

  • 详细介绍HTML5新标签的兼容性处理(图)
  • HTML5 Canvas处理头像上传的图文代码详细介绍
  • GitHub用户发起HTML5网页移植版《星际争霸》项目的图文详解
  • 基于HTML5的可预览多图片Ajax上传
  • H5学习之旅-H5的新特性(1)
  • HTML5 Web 存储详解
  • IOS和HTML5,Javascript之间的交互说明
  • Nodejs+express+html5 实现拖拽上传
  • JS HTML5拖拽上传图片预览
  • NodeJS与HTML5相结合实现拖拽多个文件上传到服务器的实现方法

相关文章

  • 2018-12-03CSS 的主要缺陷是什么?
  • 2018-12-03html5中返回音频/视频是否已暂停的属性paused
  • 2018-12-03HTML5 window/iframe跨域传递消息 API介绍_html5教程技巧
  • 2018-12-03android ios h5 接私活哪个挣钱多?
  • 2017-08-06使用html5制作loading图的示例
  • 2018-12-03canvas游戏开发学习之三:绘制复杂形状
  • 2018-12-03Html5 Canvas Image的图文代码详解(二)
  • 2018-12-03canvas 动态图表
  • 2018-12-03html5与css3小应用_html5教程技巧
  • 2018-12-03详解通过HTML5 Canvas实现图片的平移及旋转变化的方法_html5教程技巧

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • HTML5 or Silverlight?
    • HTML5制作酷炫音频播放器插件图文教程_html5教程技巧
    • localstorage和sessionstorage使用记录(推荐)
    • 利用 HTML5 实现带有进度条的文件上传功能
    • 基于HTML标签marquee实现滚动效果的简单方法
    • HTML5 canvas如何绘制动态径向渐变
    • Html5剪切板功能的实现
    • 移动开发mui框架入门体验案例
    • 如何使用HTML5实现多个元素的拖放功能
    • 小强的HTML5移动开发之路(7)——坦克大战游戏1

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有