浅谈html标签的显示模式(块级标签,行内标签,行内块标签)

所属分类: 网页制作 / HTML/Xhtml 阅读数: 473
收藏 0 赞 0 分享

今天讲课的时候,讲到了html中的标签的显示模式,大致分为块级标签和行内标签。那么初学者在刚使用标签的时候会发现有些属性在一些标签上不起作用,比如宽、高、水平居中等,其实这个属性的使用只有在块级标签上使用才起作用。个人认为这个也是初学者非常容易忽略的地方,所以我就把它记下来!

比如会有一种情况,给p标签水平居中有作用,但是给font加水平居中属性就没作用(如下):

XML/HTML Code复制内容到剪贴板
  1. p{ color:red; text-align:center;}<BR>font{color:red; text-align:center;}    
XML/HTML Code复制内容到剪贴板
  1. <p>我是块级标签p</p><BR><font>我是行内标签font</font>    

运行预览之后p能使文本水平居中,但是font就不可以(如下):

那么以上这个问题就和html中的显示模式有关了:

显示模式的特性:

主要分为两大类:

块级元素:独占一行,对宽高的属性值生效;如果不给宽度,块级元素就默认为浏览器的宽度,即就是100%宽

行内元素:可以多个标签存在一行,对宽高属性值不生效,完全靠内容撑开宽高!

其中还有一种结合两种模式有点的显示模式:

行内块元素:结合的行内和块级的有点,不仅可以对宽高属性值生效,还可以多个标签存在一行显示;

在html中显示模式分为块级和行内,其中常用的块级有:div,p,h1~h6,ul,li,dl,dt,dd...  常用的行内有:span,font,b,u,i,strong,em,a,img,input,其中img和input为行内块元素。

那么有的同学就会想了,难道我就不可以控制span或者font的宽高了吗?可以的,那么我们这次抛开浮动和定位不说,就说通过display属性来将它们互相转换:

1、块级标签转换为行内标签:display:inline;

2、行内标签转换为块级标签:display:block;

3、转换为行内块标签:display:inline-block;

只要给对应的标签使用这个display这个属性,取相应的值,就可以将显示模式互相转换。

在这之前有说过 text-align这个属性是否生效,原因是块级标签如果不给宽度,块级元素就默认为浏览器的宽度,即就是100%宽,那么在100%的宽度中居中生效;但是行内元素的宽完全是靠内容撑开,所以宽度就是内容撑开的宽,我们给个背景测试看看:

所以块级是在盒子中间居中了,但是因为行内元素的宽就是内容宽,没有可居中的空间,所以text-align:center;就没有作用;但是如果给font转换为块级就不一样了:

XML/HTML Code复制内容到剪贴板
  1. p{ background:green; color:red; text-align:center;}    
  2. font{background:green;color:red; text-align:center;display:block;}    

同理,要是块级转换为行内了,文本也不能居中显示了。

因为在html中,行内元素被视为有文字特性的标签,块级能使文本水平居中,那么在块级当中的行内标签被视为文本的特性,那么块级使用text-align:center;的话,里面的行内标签会被像文本一样水平居中在块级标签中:

不加text-align:center;时:

XML/HTML Code复制内容到剪贴板
  1. p{ padding:5px;background:green; color:red;}    
  2. font{ background:yellow;}    
XML/HTML Code复制内容到剪贴板
  1. <p>    
  2.     <font>我是行内标签font</font> <font>我是行内标签font</font>    
  3. </p>    

加上text-align:center;后

XML/HTML Code复制内容到剪贴板
  1. p{ padding:5px;background:green; color:red;text-align:center;}    
  2. font{ background:yellow;}    

这次主要是讲一下html中显示模式的特性,如果本文对您有帮助,记得推荐一下哦!

原文地址:http://www.cnblogs.com/xcaocao/archive/2016/07/07/5649828.html

更多精彩内容其他人还在看

移动 web 端屏幕适配(rem)

这篇文章主要介绍了移动 web 端屏幕适配(rem)。详细的介绍了移动 web 端屏幕适配(rem),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解前端在html页面之间传递参数的方法

这篇文章主要介绍了详解前端在html页面之间传递参数的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

html form表单input使用disabled后提交不能获取表单值的解决方法

这篇文章主要介绍了html form表单input使用disabled后提交不能获取表单值的解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

DIV的失去焦点(blur)实现方法

这篇文章主要介绍了DIV的失去焦点(blur)实现方法,用防抖实现DIV鼠标移出消失,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解HTML onfocus获得焦点和onblur失去焦点事件

这篇文章主要介绍了详解HTML onfocus获得焦点和onblur失去焦点事件的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

HTML中两个tabs导航冲突问题的解决方法

这篇文章主要介绍了HTML中两个tabs导航冲突问题的解决方法,需要的朋友参考下吧
收藏 0 赞 0 分享

详解html中 position属性用法(四种)

这篇文章主要介绍了html中 position用法,文中逐一给大家介绍了position的四个属性值,感兴趣的朋友跟随小编一起看看吧
收藏 0 赞 0 分享

详解左右宽度固定中间自适应html布局解决方案

这篇文章主要介绍了详解左右宽度固定中间自适应html布局解决方案的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解 html area标签

area 元素总是嵌套在 <map> 标签中。本文重点给大家介绍html area标签的相关知识,需要的朋友参考下吧
收藏 0 赞 0 分享

HTML高亮关键字的完美解决方案

最近项目做晕头,一个接一个,其中遇到这样的一个功能,在网页中高亮关键字的实现方法,下面小编把实现代码及解决方案分享给大家,感兴趣的的朋友跟随小编一起看看吧
收藏 0 赞 0 分享
查看更多