【问题标题】:Table cell wrapping (sometimes)表格单元格换行(有时)
【发布时间】:2017-01-17 20:47:49
【问题描述】:

有一个表格,其中一行中的最后一个单元格有时会换行,但在其他情况下会正确显示。我一辈子都看不出它包裹和不包裹的情况之间有什么区别。

包装

http://bookgroupaustralia.obiweb.com.au/Book/guitar-chords

不包装

http://bookgroupaustralia.obiweb.com.au/Book/save

【问题讨论】:

  • 我们在说什么表?
  • 您在哪个操作系统/浏览器/版本上遇到问题?什么单元格,什么表?我在这些页面上没有看到任何表格数据,所以看起来你是(ab)using tables for layout?
  • 您的 HTML 中有 19 markup errors。修复它可能会修复您看到的一些错误。 (我在 OS X 上的 Safari v5 上看不到它们。)
  • 抱歉,是“您也可能是...”下的表格 (class="productTable")
  • 我在 Safari5 和 FF3 上看到了问题

标签: html css tablelayout


【解决方案1】:

您似乎在 td 元素上设置了 float: left;,这显然会改变它们的显示类型并允许它们在某些情况下换行。这有什么原因吗?您可以简单地尝试从/site/css/style.css(第 474 行)中删除它

.listing ul li.productItem, .listing ul li.productItemLast, td.productItem
{
float: left;

【讨论】:

  • 确认,删除浮动属性有效(刚刚检查过萤火虫)。
  • 移除浮动修复了包裹但会破坏其他东西。浮动是因为 css 处理显示列表和标题表的原因。宁愿只使用列表,但表格是由我们无法控制的框架生成的。
  • 可以对 CSS 进行细化,使应该只适用于表格的部分只适用于表格,应该适用于列表的部分只适用于列表。
  • 向左浮动将显示类型更改为我想要的块。销售徽章等其他元素取决于它是否位于块内。无法理解为什么有些包装和其他不
  • 然后更改您的边距并确保您的内容不会溢出(或者如果溢出,则将其剪掉)将是您的解决方案。
【解决方案2】:

更改td.productItem margin-right: 10px;到 5px;

【讨论】:

  • 修复了它,但将需要的单元格放在更近的位置,并在右侧留下一个间隙。
猜你喜欢
  • 2018-05-22
  • 2017-10-07
  • 2021-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-01
相关资源
最近更新 更多