网页制作 TD也可以溢出隐藏显示

所属分类: 网页制作 / HTML/Xhtml 阅读数: 1893
收藏 0 赞 0 分享
或许我这篇文章一取这样的名字,就会有人要问了:你怎么还在关注table啊,那早就过时了…赶紧Xhtml…div好…ul好…ol好…dl好…完了,不知道还有什么好了。

  table真的过时了么?你真的了解table么?你真的会用table么?

  打口水仗不是我们要做的,留给那些时间很充裕的人吧。

  言归正传:

  不记得是什么时候,有人在用table模拟DataGrid的时候说,为什么td超出设置为固定宽度的文字不能隐藏,而是会直接换行呢?

  是的,事实确实如此,如:

提示:您可以先修改部分代码再运行

  运行如上代码,你会发现单元格里超过固定宽度的文字不会被隐藏掉,而是换行显示了,显然,这并不是我的本意。

  看起来,这似乎是table的一个特性,它不能很好的支持{width:*px;white-space:nowrap;overflow:hidden;}的组合,说到底就是white-space:nowrap这个东东没起作用,所以看起来overflow:hidden就失效了。{注:如果是一连串的无意义字符则可生效,例如:<td class="col1">aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</td>,这个时候就不需要{white-space:nowrap}来强制它在一行内显示,因为这一连串的a会被认定为是一个字而不发生换行,从而超出.col1宽度的a会被隐藏}

  [解决方案一:]

  后来有人提到使用百分比宽度就可以了,经测试,确实可以,稍微将第一段的其中几行样式修改一下,其它的不变:

.col1 {width:20%;}
.col2 {width:40%;}
.col3 {width:40%;}

  将修改后的代码运行后,会发现,超出宽度的文字果然被隐藏了,想要的效果似乎得到了。

  事实上使用百分比宽度确实可以解决这个文字隐藏的问题,但这似乎并不是想要的最佳的解决方案,因为有的时候我们需要的是一个固定的宽度,而不是百分比宽度。

  而这一切的根源就在于如何使得单元格内的文字不换行在一行内显示。

  [解决方案二:]

  要达到这个要求,除了使用样式,我们也许还会想到一个许久不用了的标签<nobr>,这个元素的作用就是强制内容在一行显示。以上代码做如下修改,其它则不变:

<table border="1" cellspacing="0" summary="回头来看看Table:TD也玩overflow:hidden">
<tr>
<td class="col1"><nobr>神舟 优雅Q400N</nobr></td>
<td class="col2"><nobr>优雅Q400N,采用Intel Core2 Duo(Merom) T5450(1.66G)处理器</nobr></td>
<td class="col3"><nobr>迅驰4平台,突出的性价比,漂亮的外观</nobr></td>
</tr>
</table>

  做了这个修改,会发现,效果确实达到,是不是该兴奋呢?不,这似乎还不是最佳的解决方案,因为毕竟使用了一个许久不用且不推荐使用的元素标记,这多少让人觉得有点不爽。

  沿着这个思路,我换了一个角度来考虑这个问题,发现问题迎刃而解。

  既然在固定宽度的单元格内无法只简单的给th,td加上white-space:nowrap,那么我们在固定宽度的单元格内再加一个标记元素呢?

最佳方案:

提示:您可以先修改部分代码再运行

  运行上面的代码,会发现这样的做法是可以的,而且从代码的简洁性、可读性和合理性几方面来说,都较前几种方案为好。

  {还没有做过给单元格隐藏超过固定宽度内容的同学,可先在机器上玩玩,然后再来看本文}

  其实table是一个有趣,可玩性很高东东。我们不应该带着有色眼睛去看它,因为它有它存在的道理。

  之后会继续写一些关于table的文章,也作自娱之用。
更多精彩内容其他人还在看

html中关于form与表单提交操作的资料集合

这篇文章主要介绍了html中form元素与表单提交方面的知识,需要的朋友可以参考一下
收藏 0 赞 0 分享

HTML中表格动态添加_动力节点Java学院整理

这篇文章主要介绍了HTML中表格动态添加的实例代码,需要的的朋友参考下吧
收藏 0 赞 0 分享

在HTML中使用JavaScript实例代码

这篇文章主要介绍了在HTML中使用JavaScript实例代码,需要的朋友可以参考下
收藏 0 赞 0 分享

html 基于 canvas 实现的一个截图小demo

本篇文章主要介绍了html 基于 canvas 实现的一个截图小demo,具有一定的参考价值,有兴趣的可以了解一下
收藏 0 赞 0 分享

快速解决input[type=file]打开时慢、卡顿的问题

下面小编就为大家带来一篇下面小编就为大家带来一篇快速解决input[type=file]打开时慢、卡顿的问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

html转换为pdf案例的一些总结(多图推荐)

这篇文章主要介绍了关于html转换为pdf的案例,wkhtmltopdf测试 PhantomJS测试 IText和Flying Sauser等一些知识点都做了详细说明,具体操作步骤大家可查看下文的详细讲解,感兴趣的小伙伴们可以参考一下。
收藏 0 赞 0 分享

HTML网页中插入视频的方法小结

这篇文章主要介绍了HTML网页中插入视频的方法小结,需要的朋友可以参考下
收藏 0 赞 0 分享

HTML实现文本框只读不能修改其中的内容

本文通过实例代码给大家介绍了 HTML实现文本框只读不能修改其中的内容的方法,需要的朋友参考下吧
收藏 0 赞 0 分享

使用HTML+CSS实现鼠标划过的二级菜单栏的示例

本篇文章主要介绍了使用HTML+CSS实现鼠标划过的二级菜单栏的示例,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

html格式化输出JSON示例(测试接口)

本篇文章主要介绍了html格式化输出JSON示例(测试接口) ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享
查看更多