HTML
HTML
为学习Angular做铺垫,我们重新学习一下HTML的相关内容
语义化标签
HTML 语义化标签是指那些能够清晰表达其内容含义的 HTML 标签。
使用语义化标签有助于提高代码的可读性、可维护性和可访问性,同时也有利于搜索引擎优化(SEO)
<header>:用于定义文档或部分的头部区域,通常包含网站标志、导航链接等。<nav>:专门用来定义导航链接的部分,适合放置页面的主要导航菜单。<main>:表示文档的主要内容,每个页面应该只有一个<main>元素,并且它不应该作为其他元素(如<article>或<aside>)的一部分。<article>:用于定义独立的内容块,例如博客文章、新闻故事或评论,这些内容可以独立存在或者被分发到其他地方。<section>:用于将文档分成章节或逻辑部分,通常会有一个标题(<h1>到<h6>)来描述该部分的内容。<aside>:表示与主要内容相关的辅助信息,比如侧边栏或广告。<footer>:用于定义文档或部分的页脚,通常包含版权信息、联系人信息等。
此外,还有一些其他的语义化标签,例如:
<figure>和<figcaption>:用于组合图片、图表和其他插图内容及其标题。<time>:用于标记时间或日期,可以包含datetime属性以提供更精确的时间格式。<mark>:用于高亮显示文本,表明该文本是引用或需要特别注意的部分。<address>:用于定义文档作者或拥有者的联系信息。
标签语义化
再嵌入CSS样式后,我们发现很多本身带有样式标签已经失去了本身的样式存在的意义
那么我们就更应该重视标签中的语义,比如em和strong标签就应该拿来标识重点内容
行标签和块标签有很多,但我们最常使用的行标签就是没有意义的span标签,最常使用的块标签是没有意义的div标签
超链接
超链接不只可以实现跳转页面,也可以完成对资源的请求,下载
资源请求
所有在浏览器能够打开的文件都可以通过超链接直接打开,例如MP4,JPG,PDF等
不能够在浏览器中打开的文件会自动弹出下载链接,例如ZIP文件等
资源下载
可以在超链接后加入download属性,实现点击超链接下载该资源
可以通过配置download属性值来实现下载文件的重命名
1 | |
锚点
可以通过超链接实现锚点的跳转,锚点可以为标签中的id属性
注:可以通过a标签直接跳转到其他页面的锚点
1 | |
唤起应用
超链接可以唤起本地应用
1 | |
列表
注:列表在最佳实践中也要遵循语义化标签,在使用css时,有序列表和无序列表的列表项都是可自定义的,即标签的实现效果是不重要的
列表项(List Item) => li标签
有序列表 (Ordered List) => ol标签
无序列表 (Unordered List) => ul标签
自定义列表 (Definition List) => dl标签
自定义列表项目符号(Definition Term) => dt标签
自定义列表描述(Definition Description)=> dt标签
表格
表格(table) => table标签
表格标题(caption) => caption标签
表格头部(table head) => thead标签
表格主体(table body) => tbody标签
表格脚注(table foort) => tfoot标签
表格行(table row) => tr标签
表头单元格(table head)=> th标签
表中单元格数据(table date) => td标签
注:表格主题和表格脚注的单元格标签都使用td
表格属性
| 属性名 | 功能 |
|---|---|
| border | 表格边框 |
| width | 表格宽度,单元格列宽自动调整 |
| height | 表格高度,单元格高度自动调整(表头和脚注的高度不变,如果想要调整表头和脚注高度,需将属性加在thead和tfoot标签中) |
| cellspacing | 单元格间距,(边框距离为0不代表边框重叠,仍然受单元格边框粗细影响) |
| align | 水平对齐方式(thead,tbody,tfoot),[left , center , right] |
| valign | vertical align 垂直对齐方式(thead,tbody,tfoot),[top , middle , bottom] |
然而,遵循语义化标签,所有的表格样式仍然可以通过CSS来调整
跨行与跨列
跨列(column span) => colspan属性
跨行(row span)=> rowspan属性
在thead,tbody,tfoot中的th和td标签中使用跨行与跨列标签
表单
在前端框架的开发中,我们仍然画很多表单和按钮,但作用不再是通过表单来提交信息内容,而是将表单中信息绑定到model上面,然后通过js逻辑来发送请求
- 表单的作用:现在主要用于收集用户输入,并通过数据绑定机制将这些输入同步到组件的状态或模型(Model)中。表单不再直接用于提交数据给服务器。
- 按钮的作用:通常用来触发特定的行为或事件处理函数,比如验证表单、清理输入、或者发起API请求。按钮点击事件可以被监听并绑定到相应的JavaScript逻辑上,而不是默认提交整个表单。
然而,就算是不使用表单默认的提交逻辑,但我们仍然不会抛弃form标签,因为z要遵顼语义化标签的原则,显示的定义这是一个表单
多样式按钮
1 | |
fieldset标签
<fieldset> 标签是HTML中的一个表单元素,用于将表单内的相关元素组合在一起,并可选地为这个组合添加一个标题。它通常与 <legend> 标签一起使用,以提供对字段集的描述性标题。使用 fieldset 可以增强表单的语义结构和可访问性,使得表单更容易理解和使用,特别是对于辅助技术(如屏幕阅读器)的用户。
1 | |
框架
<iframe> 标签(内联框架)用于在当前HTML文档中嵌入另一个HTML页面。它允许在一个网页中展示来自不同源的其他内容,例如将一个网站的部分内容嵌入到另一个网站中,或者在同一页面上显示多个不同的内容区域。
1 | |
target联动
<iframe> 可以通过与超链接 (<a>) 和表单 (<form>) 的 target 属性来实现联动效果。通过设置这些元素的 target 属性为 <iframe> 的 name 或 id,可以让链接或表单提交的结果在指定的 <iframe> 中显示。
类似地,你也可以让表单提交的结果显示在一个 <iframe> 中。这可以通过将表单的 target 属性设置为 <iframe> 的 name 或 id 来实现
`