2009-01-26 78 views
24

所以我有一个包含一些动态文本的DIV。假设我知道文本和字体大小,但我不知道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的先验大小?如果我知道尺寸,最好的办法是什么?

谢谢!

回答

36

如果我明白你问什么,这对我的作品:

div { 
    padding-left: 2em; 
    text-indent: -2em; 
} 
+2

我还必须加上 “显示:内联块;”为此为我工作。 – Robert 2015-07-15 16:47:37

+1

这应该是公认的答案。 – WebWanderer 2016-04-11 15:40:57

+0

OP自2010年以来一直没有回来。它可能不会发生... – 2016-12-20 18:33:04

0

这应该同样适用于这两个变量和固定大小的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> 
5

不知道跨浏览器支持的,但你可以使用first-line pseudo-element

p {padding:10px;} 
p:first-line {padding-left:0px;} 

<p>Hello World, I'm Jonathan Sampson</p> 

会是diplayed为

的Hello World我
       乔纳森
       桑普森

除此之外,你可以给元素留下填充,然后负面的文本缩进。

6

W3C说你只需要使用文本缩进属性。

source

.indentedtext 
{ 
    text-align:start; 
    text-indent:5em; 
} 
相关问题