【HTML】讲讲对HTML5的语义化的理解

引言

github:【HTML】讲讲对HTML5的语义化的理解

内容速递:看了本文您能了解到的知识

在讲什么是语义化之前,先看看语义化的背景。

在之前的文章中提到HTML最重要的特性,那就是标签。但是项目一大,标签多的看不懂,一堆叠着一堆。一些命名奇奇怪怪,想维护被劝退,团队协作导致团战开始!

因此语义化迫在眉睫!

1、什么是语义化

在我们写HTML时其实无所谓,因为你里面长啥样,用户看不到,也不用看到。

因为你有CSS的漂亮衣服,即使你的HTML一塌糊涂,CSS也可以让它光鲜亮丽。

但是用户看不到,开发者看得到呀!因此,这个语义化的友好者是开发者本身。

所谓语义化,就是凭着HTML本身,也能体验出人性化的结构!

2、语义化的好处

  • 在没有CSS的情况下,页面也能呈现出很好地内容结构、代码结构。这样开发者一眼就明了你的意图,一秒破冰!

  • 对SEO友好。对开发者友好,那么对开发者的小虫子们也是当然!

    当标签应用得当,体现出上下文中你想要关键字的权重,那么搜索引擎爬虫就到了你的头上了。那么网站的访问量不就来了吗。

  • 可以支持一些特殊的设备(盲人阅读、移动设备),网页翻译等。

  • 最直观的一点,便是你的队友都希望和你合作!你的代码的语义化,队友都爱啊!

    语义化更具可读性,遵循W3C标准的团队都遵循这个标准,可以减少差异化。(跳槽快速融入?)

3、工作中语义化的思考

  • 不要使用一些纯样式标签,这些CSS会帮我们做到。如:b、font、u等一些标签。

  • 需要强调的文本,可以包含在strong或者em标签中(,strong默认样式是加粗(不要用b),em是斜体(不用i)。使用 mark标签来表示标注的/突出显示的文本。

    但是还是可以考虑使用CSS来完成。

  • 每个input标签对应的说明文本都需要使用label标签,并且通过为input设置id属性,在lable标签中设置for=someld来让说明文本和相对应的input关联起来。

  • 表单域要用fieldset标签包起来,并用legend标签说明表单的用途。

  • 应该使用<h1> - <h6>来表示标题。

  • 当用CSS写样式的时候命名也需要遵循HTML的结构,体现出语义化的本质。

4、语义化的标签

1、<header> 标签定义文档的页眉

通常包含页面的正副标题。

<header>
<h1>他真的是美男子吗?</h1>
<p>据现场勘查,他真的是美男子!</p>
</header>

2、<footer>标签定义文档或节的页脚

页脚通常包含文档的作者、版权信息、使用条款链接、联系信息等等。

可以在一个文档中使用多<footer>元素。

<footer><p>Posted by: 美男子</p>
</footer>

3、<main>标签规定文档的主要内容。

<main> 元素中的内容对于文档来说应当是唯一的。

它不应包含在文档中重复出现的内容,比如侧栏、导航栏、版权信息、站点标志或搜索表单。

在一个文档中,不能出现多个 <main> 元素。<main> 元素不能是以下元素的后代:<article><aside><footer><header><nav>

<main><h1>我的介绍</h1><p>我是一个聪明的孩子</p>
</main>

4、<section> 标签定义文档中的片段。

比如章节、页眉、页脚或文档中的其他部分。

<section><h1>PRC</h1><p>The People's Republic of China was born in 1949...</p>
</section>

5、<article> 标签规定独立的自包含内容

比如文章下的评论之类的

<article><h1>我为什么聪明呢</h1><p>我聪明的秘诀是我爱思考</p>
</article>

6、<aside> 标签定义其所处内容之外的内容。

用来装载非正文类的内容。例如广告,成组的链接,侧边栏等等。

<p>聪明的研究</p>
<aside><h1>我为什么聪明呢</h1><p>我聪明的秘诀是我爱思考</p>
</aside>

7、<nav> 元素代表页面的导航链接区域。

用于定义页面的主要导航部分。

<nav>
<ul>
<li><a href=”https://www.baidu.com”>百度</a></li>
<li><a href=”https://www.guizimo.com”>归子莫</a></li>
</ul>
</nav>

5、一个语义化模板

先来看一张图。

看起来,一个标标致致的HTML结构就很清晰了。

6、总结

有的朋友肯定会问了,那平时都是用框架写的代码,基本不用用这些,又不是去写个人网站或者官网,都是写一些业务型的H5或者后台管理。

其实对于个人网站或者官网来说,语义化是有实际价值的。而且,这个也是近些年来面试的常问的一题。最重要的是要去学习语义化的含义。做到代码语义化,包括函数的命名,组件的命名,组件业务功能的拆分。一直在路上!

重构前端知识体系,你要一起吗?

系列好文

HTML历史:【HTML】你还会来看HTML吗?带你重温亦或走进

HTML标签:【HTML】带你重忆HTML那些记忆模糊的标签

HTML视频:【HTML】讲讲HTML5视频播放的方式

HTML音频:【HTML】HTML5给网页音频带来的变化

HTML语义化:【HTML】讲讲对HTML5的语义化的理解

HTML定位:【HTML】HTML5的新特性Geolocation

HTML拖放:【HTML】HTML5的拖放你用了吗

HTML缓存:【HTML】不来看看HTML5的WebStorage吗

HTML应用缓存:【HTML】HTML5的应用程序缓存

HTML的Web Werkors:【HTML】HTML5的Web Werkors

博客说明与致谢

文章所涉及的部分资料来自互联网整理,其中包含自己个人的总结和看法,分享的目的在于共建社区和巩固自己。

引用的资料如有侵权,请联系本人删除!

感谢万能的网络,W3C,菜鸟教程等!

感谢勤劳的自己,个人博客,GitHub学习,GitHub

公众号【归子莫】,小程序【子莫说】

如果你感觉对你有帮助的话,不妨给我点赞鼓励一下,好文记得收藏哟!关注我一起成长!

幸好我在,感谢你来!

【HTML】讲讲对HTML5的语义化的理解相关推荐

  1. html语义化的理解是什么,html5语义化,html5的语义化的理解

    家里有个熊孩子,经常会有一些意想不到的事情发生:回家的时候,他会笑呵呵冲过来,大声喊着臭爸爸;你让他把鞋穿上,他会提起鞋子往楼下扔在小孩的世界里,他虽然会说话,但不一定明白其中的意思,不能正确表达;同 ...

  2. 【重构前端知识体系之HTML】讲讲对HTML5的一大特性——语义化的理解

    Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.csdn.net/cou ...

  3. HTML5语义化的理解

    语义化意味着顾名思义,HTML5的语义化指的是合理正确的使用语义化的标签来创建页面结构,如 header,footer,nav,从标签上即可以直观的知道这个标签的作用,而不是滥用div.

  4. HTML5新增语义化标签(HTML5)

    HTML5新增语义化标签(HTML5) <!DOCTYPE html> <html lang="en"><head><meta chars ...

  5. html语义化标签 例子,0820作业:HTML5新增语义化标签及实战总结

    作业1:HTML5 新增语义化布局标签 实例 html> html5新增的语义化标签 initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0, ...

  6. 结合HTML5的语义化标签,运用DIV+CSS网页布局技术设计一个个人博客页面

    ** CSS+DIV页面布局 ** 结合HTML5的语义化标签,运用DIV+CSS网页布局技术设计一个个人博客页面.要求: (1)header标签定义页面头部区:nav标签定义导航区:div标签定义中 ...

  7. HTML5概述 - 语义化标签

    一.HTML5 简介 1.什么是 HTML5 HTML5 不是一门新的语言,而是我们之前学习的 HTML 的第五次重大修改版本. 2.HTML 的发展历史 •超文本标记语言(第一版,不叫 HTML 1 ...

  8. html5新语义化标签

    HTML5的浏览器兼容 支持Html5的浏览器包括Firefox (火狐浏览器) , IE9及其更高版本,Chrome (谷歌浏览器),Safari, Opera等; 国内的遨游浏览器(Maxthon ...

  9. html5常见语义化新元素_HTML 5中的新元素

    html5常见语义化新元素 HTML的开发于1999年停止使用HTML4.W3C致力于将HTML的底层语法从标准通用标记语言(SGML)更改为XML,以及全新的标记语言,例如可缩放矢量图形(SVG), ...

  10. 对HTML语义化标签理解

    标签语义化 根据html内容的结构,选择合适的标签,即用正确的标签做正确的事情.便于开发者阅读和写出更优雅的代码的同时让浏览器的爬虫和机器很好地解析. 标签语义化的原因(优点) 即使在没有CSS样式的 ...

最新文章

  1. 瘫痪17年,利用双向脑机接口来诱发触觉,控制机械手
  2. java account函数的_用Java进行同时函数调用 - java
  3. php类可以遍历,在PHP中检测一个类是否可以被foreach遍历
  4. 可编程的智能小车,100种玩法,让孩子玩出理科编程思维
  5. python语句分为什么语句_在python中如何分句
  6. 机器学习中的数学--数学知识复习
  7. 《迎接互联网的明天——玩转3D Web》
  8. 项目管理 计算机仿真,刘宝林老师【项目管理】《挑战埃及》沙盘课程内容分享...
  9. windows下批量创建txt文件
  10. 【STM32H7】第10章 ThreadX GUIX移植到STM32H7(GCC)
  11. 中国二代居民身份证校验_编码正确性校验 java实现
  12. Iperf测试能ping通,测试带宽失败
  13. python编程写完需要几年驾龄_编程小白怎么学Python,大概要多久才能学好?
  14. Android TextView垂直滚动,并精准定位到最后一行
  15. 分享一款 浏览器密码查看器
  16. c:set -----------JSTL
  17. Day13-Java方法详解,方法的定义、重载,命令行传参,可变参数与递归
  18. 此错误(HTTP 500 内部服务器错误)意味着您正在访问的网站出现了服务器问题,此问题阻止了该网页的显示
  19. 暴风雨已至!网易云音乐暂停IPO,上市受阻的背后!
  20. 文件个数java_java程序统计某个目录的文件的个数

热门文章

  1. C语言象棋马的遍历程序,马走日遍历
  2. 二行代码解决全部网页木马(含iframe/script木马)
  3. php随机经纬度,PHP轻松实现附近的人功能,根据IP确定经纬度,根据经纬度计算距离...
  4. pycharm怎么修改html的字体大小,怎么改pycharm的字体大小
  5. 隐藏百度地图logo
  6. 编译原理——中间代码生成(逆波兰表示)
  7. 搜狗输入法 android 历史版本,搜狗输入法旧版
  8. linux local root exploit,Linux非交互环境下本地提权思路与反思 linux localroot exploit
  9. 10款微信公众平台相关的开源软件
  10. html倒计时面自动跳转,小代码   html 自己网页倒计时跳转