以标签为中心

时间:2011-09-06 17:54:01

标签: javascript html css

我有div里面有一些文字和绝对位置。我可以设置左侧或右侧,但是有一种设置中心的方法,因此Div的文本将在两个方向上扩展。

到目前为止,我只能考虑在内部创建极长的div和居中的文本。

2 个答案:

答案 0 :(得分:2)

如果您的div绝对定位,您可以简单地设置它的left属性,使其居中。

示例:

<强> HTML:

<div class="outer">
    <div class="inner">Some text...</div>
</div>

<强> CSS:

.outer {
    position: relative;
    width: 900px;
}
.inner {
    position: absolute;
    width: 500px;
    top: 0;
    left: 200px;
}

如果您不知道内部元素的宽度,则必须依赖javascript。

以下是使用jQuery的示例:

var $el = $('.inner');

$el.css('left',
    ( $el.parent().width() - $el.width() ) / 2
);

这里是小提琴:http://jsfiddle.net/aa93G/。使用.inner内的文字,您会看到文字保持居中。

答案 1 :(得分:0)

  • 集中内部文本和内联元素在父元素中使用text-align: center
  • 如果您正在处理块元素,则应在元素本身中使用margin: auto。但是你必须先为元素设置一个宽度,否则它只会占据父元素的整个宽度。