为什么HTML代码要语义化,除了代码可读性好以外,SEO有帮助外,最主要的还是对一些屏幕阅读设备或者其他辅助阅读设备友好,

可以让用户在条件受限的条件下依然可以正常使用我们的产品,比方说鼠标坏了,又或者说视力有障碍的用户等等。

fieldset,legend元素在CSS布局中的应用

<fieldset>
<legend>标题</legend>
</fieldset>

效果如下(实时):

会看到,有一个方框框,但是这个框不是完全闭合的,有个开口,这个开口上面的就是<legend>里面的文字。注意,这里有2个非常重要的点,第1个就是开口,也就是线并没有从文字下面穿过去,这个文字的背景看上去是白色的,实际上,咳咳,是透明的,再说一遍是透明的。类似这种效果,如果你想使用其他标签和CSS模拟,一般想到的就是用个背景色覆盖,使用背景色的问题在于,如果换了个背景,这个覆盖就穿帮了。而透明没有这种担忧,各种背景各个模块都可以自如地飞起来;第2个就是文字是压在线上的,传统的标签我们写个border属性,里面的文字肯定是在border里面的,但是,<legend>偏不,直接压在线上,天然的,你还别说,如果用CSS来模拟这种效果,还真要下点成本的。

基本上,各个浏览器下都是这种框框开口标题文字的效果,我大致看了下,Firefox浏览器的最有质感(设一个深色背景,如下截图),IE就是个浅边框,在白色背景下效果不错,而Chrome浏览器的边框类型是groove(沟槽)。

每个浏览器中对filedset和legend的效果都有差别

如果你有文字压线的效果,使用<fieldset><legend>布局是成本最低的,

标题想居中,使用align="center"这个HTML属性,如果是实色边框,

无论是solid或者double都可以自如使用,没有兼容性问题,但如果是虚线边框,则要考虑IE浏览器穿透的问题。

demo:

fieldset {
border:0;
border-top:1px dashed #aaa;
}
legend {
color: #999;
/* for IE */
background-color: #fff;
}
<fieldset>
<legend align="center">标题</legend>
</fieldset>

  

参考来自:http://www.zhangxinxu.com/wordpress/2016/11/html-fieldset-legend-element-css-layout/

最新文章

  1. 在IE11下设置SharePoint Server 2013却遇到“需要 Internet Explorer 才能使用此功能。”的解决办法
  2. 【python】3.x,string与bytes的区别(文本,二进制数据)
  3. 通过jekyll建立静态网页
  4. flex Chrome flash调试时 出现Shockwave flash has crashed的解决办法
  5. Django中国|Django中文社区——python、django爱好者交流社区
  6. DirectX 初始化DirectX(手写和红龙书里面的方式)
  7. cocos2d-x3.0 windows 环境配置
  8. ORA-12170: TNS:Connect timeout occurred
  9. ContextMenu控件引用以及不用v4包的方法
  10. Jmeter-元件的作用域和执行顺序
  11. JavaNIO非阻塞模式
  12. MongoDB数据库(一):基本操作
  13. go语言实现https的简单get和post请求
  14. 文件属性和ls -lhi
  15. 20145232韩文浩《网络对抗》逆向及BOF基础实践
  16. hadoop3.x的安装
  17. flutter登录页部分内容
  18. Topshelf 学习 跨平台【转载】
  19. Spark 准备篇-环境搭建
  20. 【转】彻底搞清C#中cookie的内容

热门文章

  1. Java中的final关键字(转)
  2. Ubuntu Desktop 常用软件
  3. Solidworks如何绘制文字
  4. (转) SYSTEM_HANDLE_INFORMATION中ObjectTypeIndex的定义
  5. HDU oj 开门人与关门人
  6. react 实现pure render的时候,bind(this)隐患
  7. weexapp 开发流程(二)框架搭建
  8. C++学习总结 复习篇2
  9. Oracle创建JOB定时任务
  10. hihoCoder 1234 fractal