検索
ホームページウェブフロントエンドCSSチュートリアルCSSで表示省略を超える単行・複数行テキストの効果を出す方法

この記事の内容は、CSSで表示漏れを超える効果を実現する方法についてです。お困りの方は参考にしていただければ幸いです。あなたに役立ちます。

単一行テキスト省略

CSSで表示省略を超える単行・複数行テキストの効果を出す方法

.ellipsis-line {
border: 1px solid #f70505;
padding: 8px;
width: 400px;
overflow: hidden;
text-overflow: ellipsis; //文本溢出显示省略号
white-space: nowrap; //文本不会换行
}

構文:

text-overflow:clip/ellipsis;

デフォルト値: Clip

適用先:全要素

clip:オブジェクト内のテキストがはみ出した場合、省略記号(…)は表示されませんが、はみ出した部分が切り取られます。

ellipsis: オブジェクト内のテキストがオーバーフローする場合に省略記号 (…) を表示します。

これを使用すると、マークの省略効果が表示されない場合があります。テストの結果、省略記号を使用する場合は、overflow:hidden;white-space:nowrap; と組み合わせる必要があることがわかりました。 : 特定の値; これら 3 つのスタイルは一緒に使用すると効果的です。

複数行のテキストは省略されています

WebKit ブラウザまたはモバイル端末 (主に WebKit カーネル) で

を設定するには、css 属性-webkit-line-clamp:n; を直接使用します。ブラウザ) ページの実装は比較的単純で、WebKit の CSS 拡張属性 (WebKit はプライベート属性) -webkit-line-clamp; 注: これはサポートされていない属性 (サポートされていない WebKit プロパティ) であり、CSS 仕様には表示されません。下書き。

-webkit-line-clamp は、ブロック要素に表示されるテキストの行数を制限するために使用されます。この効果を実現するには、他の WebKit プロパティと組み合わせる必要があります。一般的に結合される属性:

display: -webkit-box; オブジェクトをフレキシブル ボックス モデルとして表示するには、結合する必要があります。

-webkit-box-orient は、フレックス ボックス オブジェクトの子要素の配置を設定または取得する属性と組み合わせる必要があります。

text-overflow: ellipsis; は、複数行のテキストの場合に使用でき、省略記号「...」を使用して範囲を超えるテキストを非表示にします。

この属性は、WebKit ブラウザまたはモバイル ブラウザ (ほとんどが WebKit コア) ブラウザにのみ適しています。

.multi-line {
border: 1px solid #f70505;
width: 400px;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
}

効果は図に示すとおりです。

CSSで表示省略を超える単行・複数行テキストの効果を出す方法

エフェクトの観点から見ると、その利点は次のとおりです:

1. さまざまな幅に応じて調整を行う、応答性の高い切り捨て。

##2. 省略記号は次の場合にのみ表示されます。テキストが範囲を超えている場合、省略記号

3 は表示されません。ブラウザはネイティブに実装しているため、省略記号の位置は正確に

表示されますが、欠点も非常に直接的です。 -webkit-line-clamp は不規則な属性であり、CSS 仕様ドラフトには含まれていません。つまり、Webkit コアを備えたブラウザのみがこの属性をサポートしています。Firefox や IE などのブラウザはこの属性をサポートしておらず、ブラウザの互換性は良好ではありません。

使用シナリオ: モバイル デバイスのブラウザは Webkit カーネルに基づいているため、互換性が低いことに加えて、切り捨て効果が優れているため、主にモバイル ページに使用されます。

位置決め要素と疑似クラス要素を使用する

p{
position: relative;
width:400px;
line-height: 20px;
max-height: 60px;
overflow: hidden;
}
p::after{
content: "…";
position: absolute;
bottom: 0;
right: 0;
padding-left: 40px;
background: -webkit-linear-gradient(left, transparent, #fff 55%);
background: -o-linear-gradient(right, transparent, #fff 55%);
background: -moz-linear-gradient(right, transparent, #fff 55%);
background: linear-gradient(to right, transparent, #fff 55%);
}

効果は図に示すとおりです。

CSSで表示省略を超える単行・複数行テキストの効果を出す方法

#適切なシナリオ: さまざまなシナリオがあります。テキストコンテンツが確実であることを確認してください。コンテナを超えるため、この方法を選択することをお勧めします。ただし、テキストが行を超えていない場合も省略記号が表示されます。この方法は js で最適化できます。

注:

余分なテキストが露出しないように、高さを line-height の整数倍に設定します。

テキストの半分だけが表示されないようにするには、p::after にグラデーションの背景を追加します。

ie6-7 はコンテンツの内容を表示しないため、互換性を持たせるには、ie6-7 と互換性のあるタグを追加する必要があります (例: ...)。 ie8 では、::after を:after に置き換える必要があります。

js 最適化コードとの組み合わせ

css:
p {
position: relative;
width: 400px;
line-height: 20px;
overflow: hidden;
}
.p-after:after{
content: "…";
position: absolute;
bottom: 0;
right: 0;
padding-left: 40px;
background: -webkit-linear-gradient(left, transparent, #fff 55%);
background: -moz-linear-gradient(left, transparent, #fff 55%);
background: -o-linear-gradient(left, transparent, #fff 55%);
background: linear-gradient(to right, transparent, #fff 55%);
}

js:

$(function(){
//获取文本的行高,并获取文本的高度,假设我们规定的行数是五行,那么对超过行数的部分进行限制高度,并加上省略号
$('p')。each(function(i, obj){
var lineHeight = parseInt($(this)。css("line-height"));
var height = parseInt($(this)。height());
if((height / lineHeight) >3 ){
$(this)。addClass("p-after")
$(this)。css("height","60px");
}else{
$(this)。removeClass("p-after");
}
});
})

サードパーティのプラグインを使用するか、独自のスクリプト コントロールを作成します

多くの紹介がありますJavaScriptを使って複数の機能を実現する方法についてネット上では、行テキストのオーバーフローや省略の問題を解決するために、プラグインを使用する場合と、自己カプセル化されたJavaScriptファイルを使用する場合がありますが、自分で作成したjsを使用する方が良いと思います。 。

//div
<div class="box">北京时间11月18日,苏州太湖马拉松女子比赛中,中国选手何引丽最终获得亚军,落后冠军5秒。但是赛后,何引丽在社交媒体上道歉,称自己最后时刻跑累了,没有拿稳国旗,这究竟是怎么回事?</div>
//css
.box {
width: 400px;
height: 40px;
border: 1px solid #f70505;
line-height: 20px;
}
//js
<script type="text/javascript">
$(function() {
var content_arr = []; //定义一个空数组
$(&#39;.box&#39;)。each(function() { //遍历box内容
var content = $.trim($(this)。text()); //去掉前后文空格
content_arr.push(content); //内容放进数组
})
for (var i = 0; i < content_arr.length; i++) { //遍历循环数组
if (content_arr[i].length >= 50) { //如果数组长度(也就是文本长度)大于等于50(数字可自己定义)
content = content_arr[i].substr(0, 50) + &#39;…&#39;; //添加省略号并放进box文字内容后面
$(".box")。eq(i)。text(content);
} else {

上記は、CSS が表示省略を超えた単一行および複数行のテキストの効果を実現する方法についての完全な紹介です。

CSS3 チュートリアル について詳しく知りたい場合は、 PHP 中国語 Web サイトにご注意ください。


以上がCSSで表示省略を超える単行・複数行テキストの効果を出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
非常に多くの色のリンク非常に多くの色のリンクApr 13, 2025 am 11:36 AM

最近の色に関するツール、記事、リソースの実行がありました。あなたの楽しみのためにここにそれらを丸くすることで、私がいくつかのタブを閉じてもらいましょう。

FlexBoxでの自動マージンの仕組みFlexBoxでの自動マージンの仕組みApr 13, 2025 am 11:35 AM

ロビンは以前にこれをカバーしたことがありますが、私は過去数週間でそれについての混乱を聞いて、他の人がそれを説明することに刺されたのを見ました、そして私は望んでいました

動く虹色の下線動く虹色の下線Apr 13, 2025 am 11:27 AM

サンドイッチサイトのデザインが大好きです。多くの美しい特徴の中には、これらの見出しがあり、レインボーの下線が下線を描いて、スクロールするときに動きます。そうではありません

新年、新しい仕事?グリッド駆動の履歴書を作成しましょう!新年、新しい仕事?グリッド駆動の履歴書を作成しましょう!Apr 13, 2025 am 11:26 AM

多くの人気のある履歴書設計は、グリッド形状にセクションを配置することにより、利用可能なページスペースを最大限に活用しています。 CSSグリッドを使用して、レイアウトを作成しましょう

リロードしすぎるという習慣からユーザーを分解する1つの方法リロードしすぎるという習慣からユーザーを分解する1つの方法Apr 13, 2025 am 11:25 AM

ページのリロードは何かです。ページが反応しないと思われるとき、または新しいコンテンツが利用可能であると信じるときにページを更新することもあります。時々私たちはただ怒っています

Reactを使用したドメイン駆動型のデザインReactを使用したドメイン駆動型のデザインApr 13, 2025 am 11:22 AM

Reactの世界でフロントエンドアプリケーションを整理する方法に関するガイダンスはほとんどありません。 (「正しいと感じる」までファイルを移動するだけです笑)。真実

非アクティブユーザーの検出非アクティブユーザーの検出Apr 13, 2025 am 11:08 AM

ほとんどの場合、ユーザーがアプリケーションに積極的に関与しているのか、一時的に非アクティブであるかを本当に気にしません。非アクティブ、意味、おそらく彼ら

Wufoo ZapierWufoo ZapierApr 13, 2025 am 11:02 AM

Wufooは常に統合に優れています。キャンペーンモニター、MailChimp、TypeKitなどの特定のアプリと統合されていますが、

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。