我试图在 div 中将带有一些文本的段落标签居中,但我似乎无法使用 margin: 0 auto 将其居中,而无需为段落指定固定宽度。我不想指定固定宽度,因为我将有动态文本进入段落标签,并且它总是会根据文本的多少而具有不同的宽度。
有谁知道我如何在 div 中将段落标签居中而不必为段落指定固定宽度或不使用表格?
这是使用样式表的方法。
样式表:
div.center-content
{
text-align: center;
}
div.center-content p
{
text-align: left;
margin-left: auto;
margin-right: auto;
}
HTML:
<div class="center-content">
<p>Lorem ipsum dolor sit amet</p>
</div>
除了“文本对齐”属性
用于在块元素(如 div)中居中元素
像使用 css
边距:自动
类似于下面发布的内容
垂直居中时,最好使用表格(在大多数情况下,这是唯一的跨浏览器兼容解决方案)
您可以使用
“文本对齐:中心” “垂直对齐:中间”
我认为最好的方法是将元素包含在块级元素中并执行以下操作:
.innerElement {margin:0 auto}
鉴于它们都是没有 float 参数的块级元素,它应该工作得很好!
这是一个很好的解决方法,可以使没有宽度的 div 居中。
是无表的,可以在任何浏览器中工作!
使用内联 CSS 试试这个:
<p style="text-align: center;">Lorem ipsum dolor sit amet</p>
或者只使用 HTML
<p align="center">Lorem ipsum dolor sit amet</p>
如果 div 设置了宽度,那么你只需要
.myDiv { 文本对齐:中心;}
也听听加里的评论。在任何情况下都不要使用内联 CSS。
如果您在 div 中有其他东西要居中,这也是另一个肮脏的修复:
你总是可以:
$('.youParagraph 或 .otherContent').wrap('');
如果您在一个大型团队中工作并且关注点分离是一个问题,显然不要这样做。
我希望这会有所帮助。
嗯,自动边距需要设置宽度,因为默认情况下是块级元素,例如
将扩展到整个可用宽度。
如果你不支持 IE < 8 你可以设置 { display: table; 边距:0 自动;}
否则,如果您的元素被块级元素包围,您可以执行 p { display: inline-block; } p { 显示:内联;} html > /**/ body p { display: inline-block; } (最后两条规则适用于 IE 并为健全的浏览器重置 IE 修复)之后,应用 { text-align: center; } 在容器上。
正如有人已经提到的,请参阅http://haslayout.net/css-tuts/Horizontal-Centering了解更多信息。
干杯! Zoffix Znet