所以我有一个包含一些动态文本的DIV。假设我知道文本和字体大小,但我不知道DIV的大小。我希望DIV中的文本显示足够智能,以便在文本换行时显示缩进。
说我的原始文字看起来像这样:
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt
相反,我希望它看起来像这样:
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt
如果我不知道DIV的大小,那么最好的方法是什么?如果我知道尺寸,最好的方法是什么?
谢谢!
答案 0 :(得分:46)
如果我理解你的要求,这对我有用:
div {
padding-left: 2em;
text-indent: -2em;
}
答案 1 :(得分:6)
不确定跨浏览器支持,但您可以使用first-line pseudo-element:
p {padding:10px;}
p:first-line {padding-left:0px;}
<p>Hello World, I'm Jonathan Sampson</p>
将被视为
Hello World我是
乔纳森
桑普森
除此之外,你可以给元素左边填充,然后给出负文本缩进。
答案 2 :(得分:6)
答案 3 :(得分:1)
对于可变和固定大小的DIV,这应该同样有效。
<div style="width: 150px; text-indent: -2em; padding-left: 2em;">
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor
incididunt.
</div>
答案 4 :(得分:0)
使用CSS text-indent
属性:
.box {
border: 1px solid #ddd;
background: #fff;
max-width: 300px;
padding: 15px 15px 15px 45px;
}
.box p {
font-family: Arial, sans-serif;
line-height: 1.5;
margin: 0;
text-align: justify;
font-size: 12px;
text-indent: -30px;
}
<div class="box">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Illo repellendus natus minima ex possimus? Pariatur odit distinctio, similique, adipisci nesciunt molestias iusto ipsa repellendus recusandae unde, enim veniam voluptatem expedita.</p>
</div>