0

我尝试在我的 CSS 的几个位置调整宽度,但文本一直在一行上流动,并且没有包裹在“左侧栏”内。我的文字向右走多远似乎没有限制,我希望有一个限制。如何在 CSS 中设置它?

<h3> JKHJKHJKHKJHJKHJKHJKHKJHJKHJKHKJH</h3> 


#leftsidebar {
  position:fixed; 
  width: 160px; 
  top:150px; 
  margin:0px;
  line-height:165%; 
  white-space:nowrap; 
  z-index:50; 
  padding: 0px 35px;
}

http://jsfiddle.net/4uxcN/

4

5 回答 5

3

删除white-space:nowrap;(并最终添加word-wrap: break-word;以尊重您的无空格长字的 div 边界)以将文本发送到新行;

如果您希望将overflow-x: scroll;文本放在一行中,但希望在固定宽度的 div 内有一个水平滚动条,请添加:http: //jsfiddle.net/4uxcN/10/

于 2013-01-29T21:09:19.143 回答
1

如果您谈论的是word-wrap: break-word属性,它将在到达父宽度的末尾时破坏该单词。

于 2013-01-29T21:03:02.733 回答
1

删除 {white-space:nowrap;},它会强制你的文本为一行,并添加 {word-wrap: break-word} 来处理你很长的单词。

http://jsfiddle.net/4uxcN/6/

#leftsidebar {
    word-wrap: break-word;
}
于 2013-01-29T21:05:50.807 回答
1

基本上,有3种方法可以做到:

  1. 只需删除您的white-space财产。关联
  2. 删除white-space属性,并添加word-wrap: break-word;属性。关联
  3. 将您设置white-spacepre-wrap而不是nowrap. 关联
于 2013-01-29T21:08:32.540 回答
1

如果你删除

white-space:nowrap; 

所有文本将在空格处中断以适应框宽度。

像您示例中的超长字符串不会断裂。要强制断开愚蠢的长字符串,您可以使用。

word-wrap:break-word;

您也可以使用溢出属性,例如

overflow:scroll

这真的取决于你想要的布局

于 2013-01-29T21:09:03.603 回答