いくつかのよく使われるhtml css整理--テキストの長さの切り取り
3110 ワード
div+css設定リストdivが部分的に表示されていません...(1行テキスト)
現在のブラウザでは、単行テキストのオーバーフロー表示省略記号を実現するために使用される
マルチテキスト処理、由来http://c7sky.com/text-overflow-ellipsis-on-multiline-text.html
この私がテストした配合heightの設定chromeは正常で、firefoxは省略記号がありません.
二、-o-ellipsis-lastlineは推奨されていませんが、operaはchromeと同じカーネルを使用しています.
三、jQueryはテストしていない、互換性が最も強い
各ブラウザのプライベート属性を除いて、ブラウザにまたがる解決方法はありますか?もちろんjsで実現しました!(エレメントの高さが親エレメントの高さよりも小さくなるまで、末尾の文字を後ろから1つずつ削除します)
width:200px; // :
overflow:hidden; //
text-overflow:ellipsis; // 。
white-space:nowrap; // 。 , br
現在のブラウザでは、単行テキストのオーバーフロー表示省略記号を実現するために使用される
text-overflow:ellipsis
プロパティがサポートされていますが、このプロパティでは複数行のテキストはサポートされていません.マルチテキスト処理、由来http://c7sky.com/text-overflow-ellipsis-on-multiline-text.html
、 -webkit-line-clamp
Webkit -webkit-line-clamp , WebKit-Specific Unsupported Property, , Webkit , 。 , , ~o(∩_∩)o
p {
overflow : hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
この私がテストした配合heightの設定chromeは正常で、firefoxは省略記号がありません.
二、-o-ellipsis-lastlineは推奨されていませんが、operaはchromeと同じカーネルを使用しています.
Opera 10.60 ,text-overflow -o-ellipsis-lastline 。 , 。 , //(ㄒoㄒ)//
p {
overflow: hidden;
white-space: normal;
height: 3em;
text-overflow: -o-ellipsis-lastline;
}
三、jQueryはテストしていない、互換性が最も強い
各ブラウザのプライベート属性を除いて、ブラウザにまたがる解決方法はありますか?もちろんjsで実現しました!(エレメントの高さが親エレメントの高さよりも小さくなるまで、末尾の文字を後ろから1つずつ削除します)
$(".figcaption").each(function(i){ var divH = $(this).height(); var $p = $("p", $(this)).eq(0); while ($p.outerHeight() > divH) { $p.text($p.text().replace(/(\s)*([a-zA-Z0-9]+|\W)(\.\.\.)?$/, "...")); }; });