1.常用的语义标签

  • 意义:语义标签便于阅读代码,也便于搜索引擎解析文档结构与内容
标签 含义
article 定义页面独立的内容区域
aside 定义侧边栏内容
header 定义了文档的头部区域
section 定义文档中的区块
nav 定义文档中的区块
footer 定义 section 或 document 的页脚

2.兼容性

  • IE8及IE8以下版本中,无法识别新标签,需要执行相关代码
  • 解决办法就是:在页面渲染前,用js创建这些标签元素,再为其设置css样式
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test</title>
<script>
document.createElement('header');
document.createElement('footer');
document.createElement('article');
document.createElement('aside');
document.createElement('section');
document.createElement('nav');
</script>
</head>
<body>
<header>我是header</header>
<footer>我是footer</footer>
<article>我是article</article>
<aside>我是aside</aside>
<section>我是section</section>
<nav>我是nav</nav>
</body>
</html>

这样ie8就可以正常识别新的语义标签了,但是默认渲染为行内元素,需要再为其设置css样式为块级元素

<style>
article,aside,header,section,nav,footer{
display:block;
}
</style>

3.第三方插件 html5shiv.js

  • 由来:H5那么多的新标签,如果每个都要通过这种方法去生产的话,是不是太麻烦了呢
  • 解决办法:直接借用前辈大牛封装好的js库 --- html5shiv.js
  • 使用方法:直接引入标签即可(js代码必须在Dom渲染之前运行!!!)
<head>
<meta charset="UTF-8">
<title>Test</title>
<script src="https://cdn.bootcss.com/html5shiv/r29/html5.js"></script>
</head>

4.自定义标签

  • 在高级浏览器中,默认能识别自定义标签,只是默认将其渲染为行内元素。
  • 可以自己给这些自定义标签设置css属性
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test</title>
<style>
yyy{
display: block;
}
</style>
</head>
<body>
<xxx>我是xxx标签的文本</xxx>
<xxx>我是xxx标签的文本</xxx>
<yyy>我是yyy标签的文本</yyy>
<yyy>我是yyy标签的文本</yyy>
</body>
<script>
// 获取第2个xxx标签
var xxx = document.getElementsByTagName("xxx")[1]
// 尝试操作样式
xxx.style.color = "red"
</script>
</html>

渲染结果:

HTML5 新的语义标签的更多相关文章

  1. HTML5中的语义标签兼容IE8以及更低版本的浏览器

    看某教程,说让HTML5的这些语义标签能够兼容低版本的浏览器,原文是“你可以设置css的display属性为block”.很好理解,就设置css样式为block嘛,那就直接设置咯: header, s ...

  2. HTML5新增的语义标签和IE版本低的兼容性问题

    <!DOCTYPE html><html> <head> <!-- HTML5中浏览器兼容(较低版本的IE浏览器不支持H5的布局):需要在<head&g ...

  3. html5新特性与用法大全了解一下

    有好多小伙伴私聊我问我html5新特性 和用法,下面我给大家具体介绍一下html5都新加了哪些新特性,下面我给大家总结一下. 1)新的语义标签 footer header 等等2)增强型表单 表单2. ...

  4. 第二季第八天 HTML5新特性

    在函数内部window.a =  a  在全局中就可以拿到这个变量 变量命名.作为函数的参数的时候要详细.调用的时候可以简单点 做全局变量的两个方案 1.绑在标签上data 2.闭包 视频一般都是二进 ...

  5. 前端进阶系列(三):HTML5新特性

    HTML5 是对 HTML 标准的第五次修订.其主要的目标是将互联网语义化,以便更好地被人类和机器阅读,并同时提供更好地支持各种媒体的嵌入.HTML5 的语法是向后兼容的.现在国内普遍说的 H5 是包 ...

  6. Html5 中的新语义标签

    1.1 语义标签对于我们并不陌生,如<p>表示一个段落.<ul>表示一个无序列表<h1> ~ <h6>表示一系列标题等,在此基础上HTML5增加了大量更 ...

  7. HTML5 十大新特性(一)——语义标签

    说语义标签前先来理解下什么叫语义化,当下html是靠div+css来铸造页面的整体框架和结构的,通篇大量的div可读性极低,因此诞生了这些特殊的标签,简单地说就是见名知义,使页面更清晰,方便维护和开发 ...

  8. html5有哪些新特性、移除了那些元素?如何处理HTML5新标签的浏览器兼容问题?如何区分 HTML 和 HTML5?

    * HTML5 现在已经不是 SGML(标准通用标记语言,是一种定义电子文档结构和描述其内容的国际标准语言) 的子集,主要是关于图像,位置,存储,多任务等功能的增加.   * 拖拽释放(Drag an ...

  9. 让IE6,7,8支持HTML5新标签的方法

    很多网站对网页进行重构的时候,提高标签的语义性,在网页中大量使用了section,article,header等HTML5新标签.考虑到目前win7自带的IE浏览器版本是IE8,而IE8不支持HTML ...

  10. HTML5学习之语义化标签(一)

    一.为什么HTML5要引入新语义标签 在HTML5出现之前,我们一般采用DIV+CSS布局我们的页面.但是这样的布局方式不仅使我们的文档结构不够清晰,而且不利于搜索引擎爬虫对我们页面的爬取.为了解决上 ...

随机推荐

  1. RxJS 系列 – Transformation Operators

    前言 前几篇介绍过了 Creation Operators Filter Operators Join Creation Operators Error Handling Operators 这篇继续 ...

  2. Flutter 3.3 正式发布

    Flutter 3 是我们正式为全平台提供支持的一个重量级里程碑,距离它的发布仅过去了三个月,今天让我们有请 Flutter 3.3 正式版!近三个月我们并没有放慢更新迭代的速度--自 Flutter ...

  3. dfs 油滴拓展——洛谷p1378

    油滴扩展 题目描述 在一个长方形框子里,最多有 \(N\) 个相异的点,在其中任何一个点上放一个很小的油滴,那么这个油滴会一直扩展,直到接触到其他油滴或者框子的边界.必须等一个油滴扩展完毕才能放置下一 ...

  4. Flutter 实现骨架屏

    什么是骨架屏 在客户端开发中,我们总是需要等待拿到服务端的响应后,再将内容呈现到页面上,那么在用户发起请求到客户端成功拿到响应的这段时间内,应该在屏幕上呈现点什么好呢? 答案是:骨架屏 那么什么是骨架 ...

  5. XYD1006CSPS

    T1 密钥 [关键结论,模拟,枚举] Description 给定两个长度为 \(n\) 的 \(01\) 序列 \(a\),\(b\),每个位置都有一个权值 \(c\), 每次操作可以将 \(a\) ...

  6. .net 调用 nsfwjs 进行视频鉴别

    1. npm 安装 nsfwjs npm install express --save npm install multer --save npm install jpeg-js --save npm ...

  7. android IO Prefetch源码分析

    I/O Prefetcher是高通本身提供的一套优化方案,可以用在Android手机App冷启动的时候.本文基于android Q 主要分libqti-iopd.vendor.qti.hardware ...

  8. PC软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具

    前言 国庆假期各种活动比较多,直到上班才有时间来更新文章~ 不过这两天我还是做了个小玩意(Clipify),起因是想给之前开发来自己用的简单视频剪辑工具 QuickCutSharp 加个功能,不过这个 ...

  9. document.designMode 设计模式

    document.designMode 的默认值是 off 关闭: 在控制台输入 document.designMode = 'on' 就可以编辑页面内容:

  10. blocks 单调栈、单调队列题解

    blocks题解: 1.题面: 2.分析: 题意大概就是说,找一段最长的区间,并且这段区间的平均值>=k,那么我们可以对他的每一个值减去k,最终求和>=0即可. 那我们需要对每个可能的左端 ...