空格导致行内元素水平间隔问题

在测试块级元素与行内元素区别时,发现本该没有间隔在一行的行内元素中间出现水平间隔。

1 <span>行内元素</span>
2 <span>行内元素</span>
3 <span>行内元素</span>
4 <span>行内元素</span>

效果如下图:

导致这种问题出现的原因在于html中span便签之间的空格。如果去掉空格那么就不会有间隔。

<span>行内元素</span><span>行内元素</span><span>行内元素</span>

效果如下图:

虽然找到了问题所在,可是如果有多个行内元素,代码挤在一行会造成阅读困难,怎么办呢?

拓展阅读:1.【原】行内元素产生水平空隙是bug吗 - 白树 - 博客园

       http://www.cnblogs.com/PeunZhang/archive/2012/09/28/2706094.html

     2.  http://davidwalsh.name/remove-whitespace-inline-block

经过上网搜索资料,发现"行内元素之间产生的间距,是由于换行符、tab(制表符)、空格等字符引起,而字符的大小是定义字体大小来控制",所以去除间隔可以从改变字体的大小入手。即font-size:0;不过具体使用还得做相应调整,不一定是值为0。

时间: 2024-10-03 22:51:47

空格导致行内元素水平间隔问题的相关文章

深度理解CSS中块级元素与行内元素的区别(个人易错点)

区别一: 块级:块级元素会独占一行,默认情况下宽度自动填满其父元素宽度 行内:行内元素不会独占一行,相邻的行内元素会排在同一行.其宽度随内容的变化而变化. 区别二: 块级:块级元素可以设置宽高 行内:行内元素不可以设置宽高 区别三: 块级:display:block; 行内:display:inline; 可以通过修改display属性来切换块级元素和行内元素. 区别四: 块级:块级元素可以设置margin,padding 行内:行内元素水平方向的margin-left; margin-righ

块级元素和行内元素

块级元素和行内元素的区别 1.块级元素(block element)块级元素会独占一行,默认情况下宽度自动填满其父元素宽度.   行内元素(inline element)行内元素不会独占一行,相邻的行内元素会排在同一行.其宽度随内容的变化而变化. 2.块级元素是可以设置宽高,而行内元素不可以. 3.块级元素可以设置外边距(margin),内边距(padding).   行内元素水平方向的margin-left; margin-right; padding-left; padding-right;

块级元素和行内元素的区别

1.块级元素可以设置宽度和高度属性,而行内元素不行: 2.块级元素:display:block; 而行内元素:display:inline; 3.块级元素可以设置margin.padding,而行内元素水平方向margin-left.margin-right.padding-left和padding-right可以有效,竖直方向上的margin-top.margin-bottom.padding-top和padding-bottom不能生效: 4.块级元素可以独占一行,而行内元素不会独占一行.

html块级元素与行内元素

我们经常使用的大多数HTML 元素,都被定义为块级元素或内联元素. 块元素,一般都从新行开始,它可以容纳内联元素和其他块元素 内联元素,一般都是基于语义级(semantic)的基本元素.内联元素只能容纳文本或者其他内联元素:还有一种特殊的元素. 可变元素,可变元素为根据上下文语境决定该元素为块元素或者内联元素. 常见的块元素有: 常见的行内元素有: 可变元素: 区别: 块级元素会独占一行,默认情况下宽度自动填满其父元素宽度 行内元素不会独占一行,相邻的行内元素会排在同一行.其宽度随内容的变化而变

块元素,行内元素,行内块区别

块元素  例如:div,p,ul,dl,ol,li,dd,dt,h1~h6  特点:独占一行,可以设置宽高,可以设置margin,padding,默认情况下宽度=父级元素的宽度  转换成行内 display:inline ****************************************************************************************** 行内元素  例如:a,span,i,em,strong,b,label  特点:不会独占一行,与

行,行内元素与块级元素有什么不同?

  块级:1.块级元素会独占一行,默认情况下宽度自动填满其父元素宽度 2.块级元素可以设置宽高 3.块级元素可以设置margin,padding 4.display:block; 行内:1.行内元素不会独占一行,相邻的行内元素会排在同一行.其宽度随内容的变化而变化. 2.行内元素不可以设置宽高 3.行内元素水平方向的margin-left; margin-right; padding-left; padding-right;可以生效.但是竖直方向的margin-bottom; margin-to

css块级元素和行内元素详细解析

块级元素和行内元素是布局中常见的两种基本元素,但是未必有很多人深入的研究它们的细微差别. 常见块级元素:div  p  form ul ol li 等: 常见的行内元素:span stronh em; 它们的区别主要有以下几点: 1.块级元素独自占一行且宽度会占满父元素宽度,行内元素不会独占一行,相邻行内元素可以排在同一行. 如图: <head> <meta charset="UTF-8"> <title>测试</title> <s

css基础:块级元素与行内元素

块级元素与行内元素的概念 块级元素一般是内容的容器,可以设置宽度和高度.而行内元素则不行,行内元素只能包含内容和其他行内元素,而块级元素可以包含行内元素和其他块级元素, 块级元素可以设置margin.padding,而行内元素水平方向margin-left.margin-right.padding-left和padding-right可以有效, 竖直方向上的margin-top.margin-bottom.padding-top和padding-bottom不能生效 占据整个父级元素.通俗的来讲

前端面试题-行内元素和块级元素

一.行内元素 一个行内元素只占据它对应标签的边框所包含的空间. 二.块级元素 块级元素占据其父元素(容器)的整个空间,因此创建了一个"块".通常浏览器会在块级元素前后另起一个新行. 三.行内元素示例 HTML CSS Example 四.块级元素示例 HTML CSS Example 五.行内元素的特点 5.1 和其他元素都在同一行上 5.2 高,行高及外边距和内边距不可改变 5.3 宽度就是它的文字或图片的宽度,不可改变 5.4 行内元素只能容纳文本或者其他行内元素 5.5 设置行内