我想制作一个div,它将根据外部div宽度包装它的线。 问题是外部div具有“ Display:inline-block”。 HTML:
<div class="option__description">
{{optionItem.description}}
</div>
CSS:
:host {
content: '';
display: inline-block;
cursor: pointer;
width: 50%;
height: 100%;
}
.option__description{
width: 100%;
max-width: 100%;
word-wrap: break-word;
}
我已经尝试了多种方法,例如在显示中添加外部div:flex。 这没用...
答案 0 :(得分:0)
查看示例时,内容正常包装。我想这是长篇不停的话。在内部包装上使用overflow-wrap: break-word;
启用该行为。
示例:https://stackblitz.com/edit/basic-bootstrap-xrydq7
答案 1 :(得分:0)
尝试以下stackblitz:
.dont-break-out {
/* These are technically the same, but use both */
overflow-wrap: break-word;
word-wrap: break-word;
-ms-word-break: break-all;
/* This is the dangerous one in WebKit, as it breaks things wherever */
word-break: break-all;
/* Instead use this non-standard one: */
word-break: break-word;
/* Adds a hyphen where the word breaks, if supported (No Blink) */
-ms-hyphens: auto;
-moz-hyphens: auto;
-webkit-hyphens: auto;
hyphens: auto;
}
这是瓢:
overflow-wrap: break-word;
确保长字符串会缠绕并且不会从容器中弹出。您也可以使用自动换行,因为如规范所述,它们实际上只是彼此的替代名称。某些浏览器支持一种而不支持另一种。 Firefox(经过测试的v43)仅支持word-wrap
。闪烁(经过测试的Chrome v45)将采用其中一种。overflow-wrap
本身全部使用,单词会在需要的任何地方中断。如果存在“可接受的中断”字符(例如,像破折号那样的字符),它将在此处中断,否则它将执行所需的操作。hyphens
,因为如果浏览器支持,连字符会尝试在断点处添加连字符(Firefox在编写时不支持闪烁)。word-break: break-all;
告诉浏览器可以在任何需要的地方打断单词。即使这样做还是可以的,所以我不确定在什么情况下100%必要。source <-整篇文章都很有用。阅读!
我还建议您使用以下StackOverflow线程:What is the difference between "word-break: break-all" versus "word-wrap: break-word" in CSS
答案 2 :(得分:0)
我发现了问题。 在选项行组件中,我有:
white-space: nowrap;
这将阻止所有文本换行。
我将其更改为空白:在选项项组件中为正常。
如果需要更多详细信息,可以查看第二个示例。