我试图在面板内显示状态注释,代码如下:
<p:panel>
<ui:repeat var="Comment" value="#{Status.commentList}">
<h:outputText value="#{Comment.Text}"/>
</ui:repeat>
</p:panel>
似乎当评论这么长时,文本从面板溢出。我已经调查了它,发现h:outputText
正在生成一个span,并试图通过CSS解决这个问题:
<h:outputText value="#{Comment.Text}"
style="width: 100px!important; overflow-x: scroll!important;"/>
给一个固定的宽度和overflow-x:scroll
应该做的技巧,但它渲染跨度更宽,即使我把它设置为100px,它渲染为400像素,没有注意到!important
。
<h:outputText value="#{Comment.Text}"
style="width: 100px; overflow-x: scroll; display:block;"/>
是正确的方法。W3表示display:block
;
在块格式上下文中,框一个接一个地排列,垂直地,从包含块的顶部开始。垂直两个兄弟框之间的距离由"margin"决定。属性。块中相邻块框之间的垂直边距格式化上下文崩溃。
在块格式上下文中,每个框的左外缘与包含块的左边缘(对于从右到左的格式,右边联系)。即使在存在浮点数的情况下也是如此(尽管a盒子的内容区域可能会因为浮动而缩小)。
这证明了为什么我的文本是溢出的,它需要作为一个上下文值来处理