2014-09-22 121 views
6

我发现很难将文本居中在两个其他文本之间。如何将两个浮动元素之间的浮动元素完美居中?

HMTL

<div class="main-container"> 
    <div class="footer"> 
     <span class="left_edge">@left</span> 
     <span class="center">@center</span> 
     <span class="right_edge">@right</span> 
    </div> 
</div> 

CSS

.footer{ 
    background: #e33; 
    padding: 5px; 
} 
.left_edge{ 
    float: left; 
} 
.center{ 
    float: left; 
} 
.left_edge{ 
    float: right; 
} 

如何完美地居中.center如图所示,正确地标记图像吗?

enter image description here

+0

不要使用跨度。使用div。使用文本对齐:居中的中心之一。另外,将宽度设置为100%。这将填补分配的区域。 – durbnpoisn 2014-09-22 23:46:36

回答

8

一种方法是将中间元素的display设置为inline-block,然后水平居中父元素上使用text-align: center

Example Here

.footer { 
    background: #e33; 
    padding: 5px; 
    text-align: center; 
} 
.left_edge { 
    float: left; 
} 
.center { 
    display: inline-block; 
} 
.right_edge { 
    float: right; 
} 

另外,您可以避免浮动元素,并使用以下方法代替:

Example Here

.footer > span { 
    display: inline-block; 
    width: 33.333% 
} 
.left_edge { 
    text-align: left; 
} 
.center { 
    text-align: center; 
} 
.right_edge { 
    text-align: right; 
} 
+0

它做到了,就像魅力! Muchas gratias! – Yax 2014-09-22 23:53:59

+2

如果可能的话,使用他的第二个例子。在动态页面中,浮动具有表现不佳并且表现出色的倾向。我建议我的前端人员仅在需要将内联元素或文本包装到图像或类似元素周围时才使用浮点。 – 2014-09-24 18:33:05