word-break:break-all和word-wrap:break-word都是能使其容器如div的內容自動換行。
table裡**固定大小並且內容自動換行
給table 加上
table-layout:fixed;
word-break:break-all;
word-wrap:break-word;
border-collapse:collapse;
margin:0;
padding:0;
css屬性,並且td和table的width都要指定,就能解決ie7,8,firefox相容問題。
其中,table-layout:fixed;固定**大小,不被內容脹開
關於文字超出截斷問題,這個問題其實挺常見和基礎的問題。
螢幕的寬度是有限的,而文字的長度(特別是商品名稱的長度)是不固定的,而且摻雜這英文和符合等,當文字長度超過設定的寬度的時候怎麼辦?
1,js或者後台程式擷取。
優點:相容性好,沒有其他異常情況出現;
缺點:不同的位置需要不同的處理。
2:直接overflow:hidden;
優點:很黃很暴力,效果直接;
缺點:最後乙個字很容易截掉一半;
3.text-overflow: ellipsis
優點:在截斷後加「…」,現在各個瀏覽器已經支援;
缺點:只支援一行,多行的無法實現;
4:word-wrap:break-word;word-break:break-all;overflow:hidden;height:24px;line-height:22px
優點:這個是我要說的重點。
word-wrap : normal | break-word
取值:normal:
控制連續文字換行。
break-word:
內容將在邊界內換行。如果需要,詞內換行(word-break)也會發生。
說明:設定或檢索當前行超過指定容器的邊界時是否斷開轉行。
word-wrap這個火狐谷歌的最新版是支援的。
word-break : normal | break-all | keep-all
引數:normal : 依照亞洲語言和非亞洲語言的文字規則,允許在字內換行
break-all : 該行為與亞洲語言的normal相同。也允許非亞洲語言文字行的任意字內斷開。該值適合包含一些非亞洲文字的亞洲文字
keep-all : 與所有非亞洲語言的normal相同。對於中文,韓文,日文,不允許字斷開。適合包含少量亞洲文字的非亞洲文字
說明:設定或檢索物件內文字的字內換行行為。尤其在出現多種語言時。
對於中文,應該使用break-all 。
word-break ie系是支援的。
這個兩個的作用是相同的,但兩個都寫是為了相容各瀏覽器。其原理就是當超出容器邊界的時候文字斷行,而超出高度後隱藏,就不會出現「2」中截掉最後乙個字一半的情況,而且支援多行。
缺點:只有火狐下有個bug,當中文和英文同時存在,而且當連續英文本過長時,英文本會集體換行,結果如下:
電腦ssssssssssssssssssssssssssssss
解決辦法是js處理下連續的英文本。
但是這情況是較極端的情況,可以容忍。
在前端table製作中,由於使用了一些外掛程式導致table無法自動換行,智慧型手動為標籤新增換行樣式。
**換行**:
tdwhite-space:pre-line; //合併空白符序列,但是保留換行符
word-wrap: break-word; //在長單詞或+url+位址內部進行換行
word-break:break-all; //允許在單詞內換行
JS修改Table中Td的值。
專案做完,在測試驗收時,使用者突然提出,可以更改查詢結果,便於列印。隱藏工程錯誤。但是這個時候提要求,比較頭痛,後來,想了想還是用前台 這樣,只要在專案的js檔案中,加入以下幾個函式,便可以解決了。code 頁面裝載時,為每個td增加單擊事件,這樣,就可以不用對每個頁面進行更改。function r...
取td在table中的第幾行
滑鼠在乙個table中點的時候,請問用什麼辦法能反應出當前點中的td是該table的第幾行?a this.parentnode.rowindex b parentelement.rowindex c 突然發現dom裡有非常多操作 的方法,平常很少用到,在此收集一下.loveliness otr.ro...
jQuery獲取table表中的td標籤
首先我來介紹一下我遇到的問題 1.當有乙個table表包含了標籤,標籤,大致可以認為是這樣的 tr td scene.id td td scene.scenename td td scene.qrurl td td scene.localurl td td if string.isnullorwhi...