<span>和<div>与text-align:center;的区别
我不明白这一点:
我尝试过将HTML <span>
标签的文本alignment居中,但是它没有做任何事情……使用<div>
标签,一切正常。 与设置margin: 0px auto;
相同的坐标margin: 0px auto;
在CSS中。
为什么span标签不支持text-align;
function?
不同之处不在<span>
和<div>
之间,而是inline
和block
之间。 <span>
默认为display:inline;
而<div>
默认为display:block;
。 但是这些可以在CSS中被覆盖。
text-align:center
在两者之间的差异在于宽度。
block
元素默认为其容器的宽度。 它可以使用CSS设置其宽度,但是不pipe怎样它都是固定的宽度。
inline
元素从其内容文本的大小中获取宽度。
text-align:center
告诉文本在元素的中心位置。 但是inline
元素中,这显然不会产生任何效果,因为元素的宽度与文本的宽度相同; alignment它的方式是没有意义的。
在block
元素中,因为元素的宽度与内容无关,所以可以使用text-align
样式将内容定位在元素内。
最后,给你一个解决scheme:
display
属性有一个额外的值,它提供了block
和inline
之间的中途房屋。 方便起见,它被称为inline-block
。 如果指定<span>
为display:inline-block;
在CSS中,它将继续作为一个内联元素工作,但也会承担块的一些属性,比如指定width
的能力。 一旦你为它指定了一个宽度,你将能够使用text-align:center;
希望有所帮助。
就像其他人所说的那样,跨度是一个内联元素。
看到这里: http : //www.w3.org/TR/CSS2/visuren.html
此外,你可以通过应用一个范围来使一个范围performance得像一个div
style="display: block; margin: 0px auto; text-align: center;"
跨度是内联的,div是块元素。 即跨度只有它们各自的内容一样宽。 您可以alignment周围容器(如果是块容器)内的跨度,但不能alignment内容。
量程主要用于格式化目的。 如果要排列或放置内容,请使用div,p或其他块元素。
span标签只与其内容一样宽,所以span标签没有“中心”。 内容两边没有额外的空间。
然而,div标签与其包含的元素一样宽,所以该div的内容可以使用内容不占用的任何额外空间居中。
所以如果你的div是100px的宽度,而你的内容只有50px,那么浏览器会把剩下的50px分成2个部分,并在内容的每一面填充25px来居中。
跨度被认为是一个内联元素。 因此,这基本上限制在其内容中。 它或多或less是透明的。
想想它有'b'标签的行为。
它可以像<span style ='font-weight:bold;'>粗体文本</ span>一样执行
div是一个块元素。
这可能是因为你的span元素集与其内容一样宽。 如果你有一个宽度为500px的div和文本alignment中心,并且你input一个span标签,它应该在中间alignment。 所以你的问题可能是一个CSS的。 在Firefox上安装Firebug并检查您的跨度或div对象具有的样式属性。