这是我做的一个例子,正好符合您的要求:
(在jsFiddle上可见:
http://jsfiddle.net/yohphomu/)
警告:
如果我正确地理解了您的问题,则无需设置高度或宽度,因为它们的默认设置是auto(也可以使用auto),但唯一的问题是,如果您想更改背景或添加边框,它会将其包括在超出期望字段的范围内。为什么会这样?如何解决,请继续阅读。
任何遇到这个问题的人都没有意识到一件事情(假设您遇到了这个问题并且正在使用div):div标记之间的所有内容都被视为(便于理解)一个完整集合,这意味着在该div中,所有您希望它代表的东西都已经完成了(电脑按照指示执行操作,而不是你所期望的操作),因此(例如)为了将文本对齐至中心,需要使用整行的空间,而且(最终)如果有边框,则会将其边框化所有使用的空间。如果您理解了这一点,请继续阅读,否则无法帮助您。
现在我们了解了发生什么,如何解决呢?好的,我们需要一个部分来居中它,另一个部分来着色。在我的示例中,我使用了一个div标记来进行居中处理,而使用了span标记来进行着色。我需要这个div标记吗?我非常确定不需要。通过将p标记用于居中(或者只使用div),我也可以实现同样的效果。但是我之所以这样做是为了保持有组织性。
实际上,只是因为我没有意识到这一点,但是又懒得去修复它。
希望这回答了您的问题。花费您4年时间才获得答案,而我只需要30分钟就弄明白了(我已经学习CSS几天了)。
示例:
<div class='container'>
<div class="text">
text text text text text text text text text text text
text text text text text text text text text text text text text text text text text
</div>
<div class="holder">
<p><span>text here</span></p>
</div>
<div>
text text text text text text text text text text text
text text text text text text text text text text text text text text text text text
</div>
</div>
那么CSS将如下所示:
.container {
width: 500px;
height: 500px;
}
.text {
font-size: 20px;
}
.holder {
text-align: center;
}
span {
background-color: blue;
border: 1px solid black;
}
注意:我设置了容器的宽度和高度,因为我同时在进行一个项目,并模拟全屏文本。
还要注意的是,我让文本具有单独的背景色和边框。我这样做是为了显示其测量值是独立的,并且在需要时可以重新调整大小。
不用谢,我也认为人们没有理解你的问题。希望我理解得对。