html细节积累-01
语义错误
块级元素可以包含内联元素和某些块级元素,内联元素不能包含块级元素,只能包含内联元素
页面可能正常解析,但不符合语义。浏览器自带容错机制,对于不规范的写法也能够正确解析,各浏览器的容错机制不同,所以尽量按规范来写;
/*规范的写法*/ <div>
<h2>jikexueyuan</h2>
<p>IT education</p>
</div> /*不规范的写法*/ <span>
<div>wrong</div>
</span>
h1、h2、h3、h4、h5、h6、P标签不能包含块级元素 如div section等
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport">
<meta content="yes" name="apple-mobile-web-app-capable">
<meta content="black" name="apple-mobile-web-app-status-bar-style">
<meta content="telephone=no,email=no" name="format-detection">
<meta name="App-Config" content="fullscreen=yes,useHistoryState=yes,transition=yes">
<title></title>
</head>
<body>
<a href="">
<button>click</button>
</a>
<p>
<h3>dsds</h3>
</p>
</body>
</html>
行内元素强制转成块级元素,块级元素强制转成行内元素
如下做法是不推荐的:
给 <div> 标签设置 inline-block 属性
给 <span>标签设置 block 属性
li标签可以包含div以及ul,ul的子元素应该只有li
/*规范的写法*/ <li>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
<div></div>
</li> /*不规范的写法*/ <ul>
<a href="">迷路的a标签</a>
<li></li>
<li></li>
<li></li>
</ul>
使用 disabled=false
disabled 属性是用来禁用标签的,一般用于 input 、button等,表示不可点击。
正常的用法是:
<input type="text" name="lname" />
<input type="text" name="lname" disabled="disabled" />
错误的写法:
<input type="text" name="name" disabled="false" />
这里虽然 disabled="false" 语义也代表不禁用,但实际上是被禁用的。
disabled 属性规定应该禁用 input 元素,即只要出现改属性为禁用。<input type="text" name="name" disabled="" />
页面中同一个 ID 出现两次及更多
ID应该是dom元素唯一标示符;
错误的使用 role 属性
role更多的是用来增强语义性,当现有的html标签不能充分表达语义性的时候,就可以借助role来说明。通常它更多的出现在一些自定义的组件上。比如html中没有tree标签,我们就可以把他的role设置为tree,这样可以增强组件的可访问性、可用性和可交互性。
html细节积累-01的更多相关文章
- html---规范、细节积累-01
语义错误 块级元素可以包含内联元素和某些块级元素,内联元素不能包含块级元素,只能包含内联元素 页面可能正常解析,但不符合语义.浏览器自带容错机制,对于不规范的写法也能够正确解析,各浏览器的容错机制不同 ...
- 聊聊自学大数据flume中容易被人忽略的细节
前言:老刘不敢保证说的有多好,但绝对是非常良心地讲述自学大数据开发路上的一些经历和感悟,保证会讲述一些不同于别人技术博客的细节. 01 自学flume的细节 老刘现在想写点有自己特色的东西,讲讲自学 ...
- 去BAT,你应该要看一看的面试经验总结
我去年12月份从上一家公司离职,一直到今年3月份,基本上都在面试中度过来的. 先交代下背景:坐标上海,做技术开发,我本人面试的职位是linux服务器开发,最倾向的职位是服务器开发主程或技术经理.我本人 ...
- [Android] 关于系统工具栏和全屏沉浸模式
随着应用程序的一些深入设计,大家总想要更好的界面和体验,所以有些东西并不能只是知道方法就结束了,是得要去深入研究研究的.通过这个过程我觉得,从应用层面来讲,想实现一个功能很简单,但若想实现的好,就要去 ...
- 17.centos7基础学习与积累-003-命令练习01
1.从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 linux命令的学习: 创建目录:mkdir mkdir /data mkdir ...
- 19.centos7基础学习与积累-005-命令总结01
从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 1.查看命令帮助的方法: --help 适用于一般命令,非内置命令 man 适用于 ...
- 鸿蒙内核源码分析(文件句柄篇) | 深挖应用操作文件的细节 | 百篇博客分析OpenHarmony源码 | v69.01
百篇博客系列篇.本篇为: v69.xx 鸿蒙内核源码分析(文件句柄篇) | 深挖应用操作文件的细节 | 51.c.h.o 文件系统相关篇为: v62.xx 鸿蒙内核源码分析(文件概念篇) | 为什么说 ...
- SolidWorks知识积累系列-01
Solidworks学习 1. 基本知识点总结 基准视图 主视图:从前往后看,前视基准 俯视图:从上往下看,上视基准 侧视图:从右向左看,右视基准 草图要求 单封闭性,草图要依附于某个位置 绘制大概形 ...
- java积累的细节问题
一.将几个数字进行拼接,拼接成字符串 一定要将""放到几个数字之前,否则就会把数字相加之后的数转化成字符串 如你需要拼接年份,月份,和日 如果:2018+12+13+"& ...
随机推荐
- Bootstrap入门(八)组件2:下拉菜单
Bootstrap入门(八)组件2:下拉菜单 先引入本地的CSS文件和JS文件(注:1.bootstrap是需要jQuery支持的.2.需要在<body>当中添加) <link ...
- python yield generator 详解
本文将由浅入深详细介绍yield以及generator,包括以下内容:什么generator,生成generator的方法,generator的特点,generator基础及高级应用场景,genera ...
- MAC的VIMRC
set nocompatible " 关闭 vi 兼容模式 syntax on " 自动语法高亮 " color ...
- Spark:控制日志输出级别
Spark:控制日志输出级别 终端修改 在pySpark终端可使用下面命令来改变日志级别 sc.setLogLevel("WARN") # 或者INFO等 修改日志设置文件 ** ...
- linux命令行模式下对FTP服务器进行文件上传下载
参考源:点击这里查看 1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码 ...
- 龙珠超的新OP【限界突破×サバイバー】
这首歌真的很燃 下载>> 限界突破×サバイバー 中文歌词 演唱:冰川清志 兴奋了!就去宇宙吧 最先端的“着迷”怎么样! 握在手中 突然想要大笑 糊里糊涂也习惯了吗! I can't g ...
- indexOf()--数组去重
@(JavaScript) 数组去重方法有多中,这里列举出自己认为比较容易理解的方法. 思路: 创建一个新的空数组,用来存放去重后的新数组. 利用for循环循环遍历需要去重的数组. 利用indexOf ...
- WebServerice的发布
在webserverice一文中,我们简单的介绍了一下什么是webserverice,以及如何建立一个webserverice服务.今天,我们一起学习下webserverice是如何发布的. 为什么要 ...
- 怎样在chrome中内置扩展,以及一些简单的定制
本文中chromium 版本为54 参考资料: chromium如何新增extension API以及添加内部扩展 http://slides.com/luyuan/grit#/ 一.嵌入扩展 1. ...
- use vue vuex vue-router, not use webpack
vue,vuex,vue-router放在一起能做什么?不用webpack之类的打包工具使用他们是否可行?各位道友在初学vue时是否有这样的困惑.因为现代构建前端项目的一般模式是: 安装webapck ...