当前位置: 首页 > 面试题库 >

为什么溢出:隐藏在a中不起作用?

景明诚
2023-03-14
问题内容

我有一个表格单元格,我一直希望成为一个特定的宽度。但是,它不适用于较大的无间距文本字符串。这是一个测试用例:

td {

  border: solid green 1px;

  width: 200px;

  overflow: hidden;

}


<table>

  <tbody>

    <tr>

      <td>

        This_is_a_terrible_example_of_thinking_outside_the_box.

      </td>

    </tr>

  </tbody>

</table>

如何使文本在框的边缘处被切除,而不是使框展开?


问题答案:

需要设置table-layout:fixed 表元件上的合适的宽度,以及overflow:hiddenwhite-space:nowrap在桌子上的细胞。

例子

定宽列

表格的宽度必须与固定宽度的单元格相同(或更小)。

使用一个固定宽度的列:

* {

  box-sizing: border-box;

}

table {

  table-layout: fixed;

  border-collapse: collapse;

  width: 100%;

  max-width: 100px;

}

td {

  background: #F00;

  padding: 20px;

  overflow: hidden;

  white-space: nowrap;

  width: 100px;

  border: solid 1px #000;

}


<table>

  <tbody>

    <tr>

      <td>

        This_is_a_terrible_example_of_thinking_outside_the_box.

      </td>

    </tr>

    <tr>

      <td>

        This_is_a_terrible_example_of_thinking_outside_the_box.

      </td>

    </tr>

  </tbody>

</table>

使用多个固定宽度的列:

* {

  box-sizing: border-box;

}

table {

  table-layout: fixed;

  border-collapse: collapse;

  width: 100%;

  max-width: 200px;

}

td {

  background: #F00;

  padding: 20px;

  overflow: hidden;

  white-space: nowrap;

  width: 100px;

  border: solid 1px #000;

}


<table>

  <tbody>

    <tr>

      <td>

        This_is_a_terrible_example_of_thinking_outside_the_box.

      </td>

      <td>

        This_is_a_terrible_example_of_thinking_outside_the_box.

      </td>

    </tr>

    <tr>

      <td>

        This_is_a_terrible_example_of_thinking_outside_the_box.

      </td>

      <td>

        This_is_a_terrible_example_of_thinking_outside_the_box.

      </td>

    </tr>

  </tbody>

</table>

固定和流体宽度色谱柱

必须设置 表格的宽度,但是任何多余的宽度都可以由流体单元简单地获取。

对于多列,固定宽度和流体宽度:

* {

  box-sizing: border-box;

}

table {

  table-layout: fixed;

  border-collapse: collapse;

  width: 100%;

}

td {

  background: #F00;

  padding: 20px;

  border: solid 1px #000;

}

tr td:first-child {

  overflow: hidden;

  white-space: nowrap;

  width: 100px;

}


<table>

  <tbody>

    <tr>

      <td>

        This_is_a_terrible_example_of_thinking_outside_the_box.

      </td>

      <td>

        This_is_a_terrible_example_of_thinking_outside_the_box.

      </td>

    </tr>

    <tr>

      <td>

        This_is_a_terrible_example_of_thinking_outside_the_box.

      </td>

      <td>

        This_is_a_terrible_example_of_thinking_outside_the_box.

      </td>

    </tr>

  </tbody>

</table>


 类似资料:
  • 昨天我检查了一个突出的产品幻灯片,我在一个网页的首页是不是属性垂直对齐只在火狐,它在IE和Chrome工作正常。 我在搜索信息,很多年前我在FF上发现了很多bug。我尝试了一些我找到的解决方案,但没有一个有效。 在chrome和IE上,div位于窗口的中心,而在firefox中,该功能会向右对齐,使窗口大于100%。 幻灯片基于:http://wordpress.org/extend/plugin

  • 问题内容: 问题很简单而且简短:为什么要清除浮动?我查看了w3标准文档,但没有任何暗示。 问题答案: 因为当您与其他任何东西一起使用时会建立一个新的块格式设置上下文(链接到w3.org规范)。

  • 我正在创建一个网站,但我有一个问题,当我创建一个带有位置:固定的标题时,我创建的标题定位在内容下面,我创建的标题是堆叠的,我还使用溢出:隐藏,但内容仍然在标题上面 这是我的网站:https://zoomcoding.id/members/santriwibs/tes/

  • 问题内容: 鉴于此html: 我要填充其容器块的所有剩余垂直空间,我从这里开始: 100%的高度也是如此,这意味着它正在采用其父容器块的高度,即问题是似乎没有起作用,未被裁剪。 另一方面,如果我换行并使用另一个具有与上述相同属性的div,则将得到所需的结果: 与此HTML当然: 我的问题是为什么并且似乎具有相同属性的不同行为?没有包装,有没有办法获得相同的效果? 具有相同属性的两个jsFiddle

  • 问题内容: 我在w3schools上阅读了以下代码,但不了解该属性如何影响文本是否显示在右侧。 我知道它用于处理超出范围的内容,但不了解它在这种情况下如何应用。 问题答案: 我尽力消除混乱: 是一个块级元素,与元素一样(它们延伸到父宽度的100%)。这就是为什么默认情况下,如果在这些元素上未声明宽度或显示,它将显示在if 下方的原因。 现在在您的示例中,仅包含浮动元素。这使其折叠到一个高度(尽管如

  • 问题内容: 我一直在努力奋斗。我想绝对定位将在div中移动的图像,并希望剪切超出div的任何内容。这是问题的示例: 因此,我希望徽标的右边缘不显示。有想法吗? 问题答案: 由于图像的容器是绝对放置的,因此它不在“包含” div的范围之内。 您的选择是使用jQuery动态定位相对位置或调整绝对定位div的尺寸。