自动换行:在 td 内使用 div 进行换行
我正在尝试使用具有断词值的 CSS word-wrap 属性。 我想在 td 中使用它,并且显然需要使用额外的 div 标签才能使其工作。美好的。
我尝试构建一个简化的用例:
HTML:
<table class="sectors">
<tr>
<td><div>HURTEAUX / Jean-Baptiste mr)</div></td>
<td><div>CHEUNJGgdfgdfvfsefsdfsdfsdfsdvvvHJG / Samuel mr</div></td>
<td><div>CHEUNG / Samuel mr)</div></td>
</tr>
</table>
CSS
.sectors td {
border: 1px solid #000;
}
.sectors td div {
width: 150px;
word-wrap: break-word;
border: 1px solid red;
}
问题
Firefox、Chrome 和 Safari 的行为符合预期(至少按照我的预期)。
但是 IE(IE6、IE7、IE8)有一个奇怪的行为:文本正确包裹在 div (红色边框)内,但 td (黑色边框)似乎无缘无故地分配了额外的空间。
有解决方法或解释吗?
I'm trying to use the CSS word-wrap property with break-word value.
I want to use this inside a td, and apparently need to use a additional div tag for this to work. fine.
I tried to build a simplified use-case:
HTML:
<table class="sectors">
<tr>
<td><div>HURTEAUX / Jean-Baptiste mr)</div></td>
<td><div>CHEUNJGgdfgdfvfsefsdfsdfsdfsdvvvHJG / Samuel mr</div></td>
<td><div>CHEUNG / Samuel mr)</div></td>
</tr>
</table>
CSS
.sectors td {
border: 1px solid #000;
}
.sectors td div {
width: 150px;
word-wrap: break-word;
border: 1px solid red;
}
The problem
Firefox, Chrome and Safari behave as expected (at least as I expect).
But IE (IE6, IE7, IE8) has a strange behavior: the text is properly wrapped inside the div (red border), but it seems the td (black border) is allocating extra space for no reason.
Any workaround or explanation?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
添加overflow:hidden到div应该可以解决这个问题。但无法提供解释,抱歉!
Adding overflow:hidden to the div should sort it out. Can't offer an explanation though, sorry!