【HTML笔记】--- 内联元素间距问题及解决方案

2019/03/07 18:27
阅读数 85

一、内联元素间距问题

 

 在HTML实践中我们会发现,有时候内联元素之间会存在一定的间距,并且这间距和margin和padding无关。这是由编辑时的空白字符引起的,并且间距的大小受父元素的font-size影响。

这和CSS的white-space属性有关,该属性的默认值为normal,normal属性是将多个空白字符合并成一个“空白”,这个空白和父元素的font-size有关。所以当内联元素之间存在空白字符时,它们之间就存在一个“空白”间距。

 <img>图像元素也属于内联元素,所以处理图像元素间的“空白”也可使用下列解决方案。

 

二、解决方案

 

 1.在编辑器中清除空白字符

简单粗暴的方法

处理前:


--------------------------------------

处理后:
<
body> <span style="font-size: 25px; background-color: #CCFF66;">today</span><span style="font-size: 25px; background-color: #CCCCFF;">tomorrow</span> </body>


 

 

 

2.设置父元素font-size: 0;

当父元素的font-size为0时,该“空白”也为0。应当注意的是内联元素会继承父元素的font-size,所以要单独给内联元素设置font-size,否则font-size为0单词将不会显示。

<body style="font-size: 0px;">
    <span style="font-size: 25px; background-color: #CCFF66;">today</span>
    <span style="font-size: 25px; background-color: #CCCCFF;">tomorrow</span>
</body>

 

 3.设置浮动属性float

浮动之后会脱离标准流,不受“空白”的影响。

<body>
    <span style="font-size: 25px; background-color: #CCFF66; float: left;">today</span>
    <span style="font-size: 25px; background-color: #CCCCFF; float: left;">tomorrow</span>
</body>


 

 注意两个<span>标签同时设置float属性,若只设置第二个<span>则会如下图显示:

若不懂,请看这:【CSS学习】--- float浮动属性

 

 4.设置margin属性值为负数

负数的值要根据父元素的font-size大小确定

<body>
    <span style="font-size: 25px; background-color: #CCFF66;">today</span>
    <span style="font-size: 25px; background-color: #CCCCFF; margin-left: -5px;">tomorrow</span>
</body>


 

 

5.设置word-spacing属性值为负数 

和margin一样,负值要根据父元素的font-size大小确定

<body style="word-spacing: -5px;">
    <span style="font-size: 25px; background-color: #CCFF66;">today</span>
    <span style="font-size: 25px; background-color: #CCCCFF;">tomorrow</span>
</body>


 

 6.设置属性display: block;

块级元素之间不存在这样的空白,所以可以使用使用display: block; 将内联元素设置为块级元素。

处理前:可以看到上下两张图片之间存在“空白”

----------------------------------------------------

处理后:
<
body style="width: 130px;"> <img src="F:\images\zhaoliying\1_1_1.jpg" width="120px" style="display: block;"> <img src="F:\images\zhaoliying\1_1_1.jpg" width="120px"> </body>

 

三、最后

 若有不足,还望留言指出,十分感谢!

 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部