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

简介: 在讲什么是语义化之前,先看看语义化的背景。在之前的文章中提到HTML最重要的特性,那就是标签。但是项目一大,标签多的看不懂,一堆叠着一堆。一些命名奇奇怪怪,想维护被劝退,团队协作导致团战开始!因此语义化迫在眉睫!

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

引言

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

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

因此语义化迫在眉睫!

什么是语义化

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

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

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

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

语义化的好处

  • 在没有CSS的情况下,页面也能呈现出很好地内容结构、代码结构。这样开发者一眼就明了你的意图,一秒破冰!
  • 对SEO友好。对开发者友好,那么对开发者的小虫子们也是当然!
    当标签应用得当,体现出上下文中你想要关键字的权重,那么搜索引擎爬虫就到了你的头上了。那么网站的访问量不就来了吗。
  • 可以支持一些特殊的设备(盲人阅读、移动设备),网页翻译等。
  • 最直观的一点,便是你的队友都希望和你合作!你的代码的语义化,队友都爱啊!
    语义化更具可读性,遵循W3C标准的团队都遵循这个标准,可以减少差异化。(跳槽快速融入?)

工作中语义化的思考

  • 不要使用一些纯样式标签,这些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的结构,体现出语义化的本质。

语义化的标签

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><ahref=https://www.baidu.com>百度</a></li>

<li><ahref=https://www.guizimo.com>归子莫</a></li>

</ul>

</nav>

一个语义化模板

先来看一张图。

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

总结

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

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

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

博客说明与致谢

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

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

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

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

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

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

所属专栏:重构前端知识体系(HTML)

幸好我在,感谢你来!


目录
相关文章
|
7月前
|
移动开发 前端开发 安全
|
9月前
|
前端开发
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
273 1
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
|
7月前
|
前端开发
|
7月前
|
前端开发 JavaScript
|
Web App开发 网络架构 开发者
艾伟:HTML重构:战略篇
  《Refactoring HTML: Improving the Design of Existing Web Applications》是一本精彩的HTML重构指南,作者给出了HTML重构的实践路线和方法。
941 0
|
Web App开发 开发者 网络架构
|
5月前
|
移动开发 前端开发 JavaScript
征信报告修改器,征信报告生成器,制作软件无痕修改软件【js+html+css】
本项目为信用评分模拟器教学工具,采用HTML5实现,仅供学习参考。核心功能通过JavaScript构建,包含虚拟数据生成、权重分配及信用因素分析(如还款记录、信用使用率等)。
|
5月前
|
存储 自然语言处理 前端开发
抖音快手小红书虚拟评论截图生成器,模拟对话制作工具,html+js+css
这是一款纯前端实现的多平台虚拟评论生成器,支持抖音、快手、小红书风格,适用于产品演示与UI设计。采用Vanilla JS与Flexbox布局,利用IndexedDB存储数据,CSS Variables切换主题。
|
5月前
|
前端开发 JavaScript
个人征信电子版无痕修改, 个人信用报告pdf修改,js+html+css即可实现【仅供学习用途】
本代码展示了一个信用知识学习系统的前端实现,包含评分计算、因素分析和建议生成功能。所有数据均为模拟生成
|
5月前
|
存储 前端开发 安全
病历单生成器在线制作,病历单生成器app,HTML+CSS+JS恶搞工具
本项目为医疗病历模拟生成器,旨在为医学教学和软件开发测试提供数据支持,严格遵守《医疗机构病历管理规定》。

热门文章

最新文章

  • 1
    前端如何存储数据:Cookie、LocalStorage 与 SessionStorage 全面解析
  • 2
    前端工程化演进之路:从手工作坊到AI驱动的智能化开发
  • 3
    Vue 3 + TypeScript 现代前端开发最佳实践(2025版指南)
  • 4
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
  • 6
    实现“永久登录”:针对蜻蜓Q系统的用户体验优化方案(前端uni-app+后端Laravel详解)-优雅草卓伊凡
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距