展会信息港展会大全

CSS word-wrap 防止表格被撑开做法
来源:互联网   发布日期:2016-03-25 16:30:18   浏览:1900次  

导读:运用到TD的noWrap属性,以及table的style=\TABLE-LAYOUT: fixed;; WORD-BREAK: break-all;;border-collapse: collapse\代码配合 一。关于TD的noWrap属性 ☆提出问题: td width=28% align=right nowrap 我设置nowrap和不设置nowrap效果都一样。就是表格随着...

运用到TD的noWrap属性,以及table的style=\"TABLE-LAYOUT: fixed;; WORD-BREAK: break-all;;border-collapse: collapse\"代码配合

一。关于TD的noWrap属性

☆提出问题:

<td width="28%" align="right" nowrap >

我设置nowrap和不设置nowrap效果都一样。就是表格随着文字自动伸展,为什么?

→回答问题:

TD元素noWrap属性的行为与TD元素的width属性有关。

◆如果未设置TD宽度,则noWrap属性是起作用的。

◆如果设置了TD宽度,则noWrap属性是不起作用的。

示例文件,点击运行按钮,查看效果

HTML 代码

引用:

--------------------------------------------------------------------

代码如下

复制代码

<html>

<head>

<title>wrap 属性研究</title>

<meta http-equiv="Content-Type" content="text/html;; charset=gb2312">

</head>

<body bgcolor="#FFFFFF" text="#000000">

<p> 测试字符串:</p>

<p>我终于明白,我其实有一条韧性十足的命,它远比我想象中的那条命结实得多、耐磨的多……</p>

<p>单元格未设置 nowrap属性的空表:</p>

<table width="100" border="1" cellspacing="0" cellpadding="0">

<tr>

<td> ;;</td>

</tr>

</table>

<p> 加入测试字符串:</p>

<table width="100" border="1" cellspacing="0" cellpadding="0">

<tr>

<td> 我终于明白,我其实有一条韧性十足的命,它远比我想象中的那条命结实得多、耐磨的多……</td>

</tr>

</table>

<p> 单元格设置了nowrap属性,未设置width属性:</p>

<table width="100" border="1" cellspacing="0" cellpadding="0">

<tr>

<td nowrap> 我终于明白,我其实有一条韧性十足的命,它远比我想象中的那条命结实得多、耐磨的多……</td>

</tr>

</table>

<p> 单元格设置了nowrap属性,也设置了width属性:</p>

<table width="200" border="1" cellspacing="0" cellpadding="0">

<tr>

<td width="120" nowrap>我终于明白,我其实有一条韧性十足的命,它远比我想象中的那条命结实得多、耐磨的多……</td>

<td> ;;</td>

</tr>

</table>

</body>

</html>

----------------------------------------------------------------------

----------------------------------------------------------------------

二。 table的宽度,单元格内换行问题

1. 要想固定table的总的宽度和每列的宽度:

<TABLE id="Table1" style="TABLE-LAYOUT:fixed" border="1">

或在脚本中:

this.style.tableLayout = fixed

2. 换行问题

<td>有个attribute 叫 NOWRAP,可以控制每个单元格是否允许换行

<TD nowrap=true>

或者

this.noWrap = true

3. 截断英文单词强行回行

上面两个方法可以把表格的宽度都固定了,每个单元是否允许回行都可以设定了,现在可能又会碰到一个问题,当允许回行的遇到比较长的英文单词,可能就超出了这个单元格的宽度,要是不把这个单词从中截断强行换行的话,这个单词的超出单元格宽的的部分将不被显示出来。所以需要在单词超出单元格长度的地方把单词强行截断回行。

可以利用css中的word-break 风格来达到我们的目的:

<TABLE id="Table1" style="TABLE-LAYOUT:fixed;;word-break:break-all" border="1">

或在脚本中:

this.style. wordBreak = break-all

String设置或获取一个下面的值:

normal

缺省值. 允许从每个词处回行。

break-all

不管在什么位置,超过列宽时就回行。

keep-all

不允许 Chinese, Japanese, 和 Korean 回行。这个功能类似与“normal” 的非亚洲语言版本。

总结,先用noWrap强行令文字不换行,再用style="TABLE-LAYOUT: fixed;; WORD-BREAK: break-all;;border-collapse: collapse"强制表格不撑开,即达到效果。

效果演示:<!--代码引自aoyun.topcool.net/index.html-->

HTML 代码

引用:

代码如下

复制代码

--------------------------------------------------------------------------------

<TABLE cellSpacing=0 cellPadding=0 width="100%" border=1 bordercolor="#A5C9CE">

<TBODY>

<COLGROUP>

<COL bgColor=#ffffff align=middle width=104>

<COL class=text105 bgColor=#ffffff width=* nowrap>

<COL class=text9 bgColor=#f7fcff align=middle width="14%">

<COL class=ef bgColor=#ffffff align=middle width=18% nowrap>

<COL align=middle width=10% nowrap>

<TBODY>

<TR class="row1" align=middle bgColor=#49a7db height=20>

<TD><NOBR></NOBR></TD>

<TD><font color="#004d69"><b>主题</b>< /font></TD>

<TD><font color="#004d69"><b>主题数|回复数</b>< /font></TD>

<TD><font color="#004d69"><b>最后发表主题</b>< /font></TD>

<TD><font color="#004d69"><b><NOBR> 版 主</NOBR></b></font></TD>

</TR>

<TR>

<TD class="row1"><img src="forumData/logo/logo112.gif"></TD>

<TD valign="middle" class="row2" onmouseover="javascript:this.style.backgroundColor='#E9F4F7';;" onmouseout="javascript:this.style.backgroundColor='#f4f4f4';;" >

<table width="100%" style="TABLE-LAYOUT: fixed;; WORD-BREAK: break-all;;border-collapse: collapse">

<tbody>

<tr>

<td nowrap><b><a title="雅典赛事竞猜" href="ShowForumThreadTree.do?m=1&forumID=112"> 『 雅典赛事竞猜 』</a></b>

</td>

<td nowrap> 享受奥运精彩,参与奥运竞猜,为中国健儿加油,更有大奖等你拿!别在门外徘徊,赶快进来! </td>

</tr>

</tbody>

</table>

</TD>

<TD noWrap class="row1">54/<font color="#FF3300">1153</font></TD>

<TD nowrap class="row2">

<table cellspacing="3" style="TABLE-LAYOUT: fixed;; WORD-BREAK: break-all;;border-collapse: collapse">

<tr>

<td height="2"></td>

</tr>

<tr>

<td align="center" nowrap><a title="热爱奥运 关心s中国的进来 不爱过的就别进来了" href="ShowThreadMessage.do?m=1&threadID=5087&forumID=112&threadPage=1"> 热爱奥运 关心s中国的进来 不爱过的就别进来了</a>

2004-08-23 14:22

<a title="woaiaoyun1" target="_blank" href="usr_info.jsp?userName=woaiaoyun1">woaiaoyun1</a></td>

</tr>

<tr><td height="2"></td>

</tr>

</table></TD>

<TD nowrap class="row2"><a title="奥运之星" target="_blank" href="usr_info.jsp?userName=奥运之星" >奥运之星</a>

</TD>

</TR>

</TBODY>

</TABLE>

</td>

</tr>

</table>

html 防止表格被撑开的css方法

代码如下

复制代码

table {

table-layout: fixed;

word-wrap:break-word;

}

div {

word-wrap:break-word;

}

要不在表格里加style="word-break:break-all;"

代码如下

复制代码

:<table width="98%" border="0" align="center" cellpadding="0" cellspacing="0" style="word-break:break-all;">

赞助本站

人工智能实验室

相关热词: 开发 编程 android

AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港