是否有任何JS/CSS/jQuery魔術我可以確定div中內容的最後一個可見位是否被切斷,並略微增加/減少DIV高度,以防止文字切斷?設置DIV高度,以便文本不被水平切割或切片
我們的系統允許用戶輸入包含XHTML的「元素」(使用Telerik Edit控件)。我們有一個ElementList頁面,在這裏我們顯示所有用戶輸入的元素。但是,由於用戶輸入的XHTML可能非常大,因此在列表頁面上我們只想顯示每個的前三行。所以我將包含XHTML的DIV設置爲等於3行文本的特定高度,並設置overflow:hidden。到現在爲止還挺好。
但是,由於用戶可以輸入XHTML,他們可以使用填充(或以其他方式偏離標準文本高度)創建表格。由於高度和溢出的組合,這些單元格內的文本似乎被水平切掉:隱藏。我們的要求人不喜歡這個樣子;但是我們當然不能限制最終用戶可以編輯的XHTML。
Here is a JSFiddle example的問題。
這個問題是不是重複:
- 「Stopping cut off text in variable height div...」爲這個問題涉及到「的webkit行鉗」,這是不相關的我的情況。 (並且在任何情況下,該問題從未得到回答)
- 「Cut text by height, no truncate」因爲該問題是關於包含純文本的DIV;我的DIV包含XHTML。你會在JSFiddle中注意到我已經使用em測量來確定DIV高度了。
這個問題讓我完全困惑 - 我希望SO社區能夠幫助我!
UPDATE:
最終,我懷疑這不能用HTML/JS/jQuery的解決。事實上,你可以製作一張桌面(或一系列DIV),並逐漸增加頂部邊距,這樣就無法避免至少切掉其中一個。
感謝所有人的迴應。我將其中一個標記爲答案,因爲在我看來,這是一個特別簡單/優雅的解決方法。
你真的必須使用'高度:3.5em;在容器上'?如果你刪除它並讓瀏覽器定義div高度怎麼辦? – bfavaretto 2012-03-19 19:35:49
@bfavaretto - 不幸的不是。如問題所述,DIV的全部內容可能比我們在查看列表中的項目時想要看到的大得多。換句話說,我們必須限制DIV的高度。 – mikemanne 2012-03-19 19:44:59
所以你只想改變高度,如果文本比塊「稍」大一些,那是正確的嗎? – 2012-03-19 19:59:19