CSS でコンテンツが長すぎる問題を解決する方法の詳細な説明

CSS でコンテンツが長すぎる問題を解決する方法の詳細な説明

CSS を記述するときに、デザインに存在する重要なケースを忘れてしまうことがあります。たとえば、コンテンツの長さが予想を超え、その可能性を考慮できない場合、ページのデザインが崩れる可能性があります。 CSS が常に期待どおりに動作することを保証することはできませんが、少なくともさまざまな種類のコンテンツでテストして、このような事態が発生する可能性を減らすことができます。

この記事では、実際の Web サイトのさまざまな UI の問題を調査し、これらの Web サイトが壊れる可能性がある理由を説明します。準備はできたか?かかって来い!

右側/左側に小さなアイコンがあるボタン

これはアコーディオンのオン/オフボタンです。ボタンの右側には、クリック可能であることを強調する小さなアイコンがあります。ただし、ボタン領域の長さが十分でない場合は、ボタン上のテキストがアイコンを覆ってしまいます。これは、長いコンテンツを考慮していない場合に発生する可能性があります。

解決策の 1 つは、アイコンのサイズに合わせて右側に十分なパディングを追加することです。

。ボタン {
  右パディング: 50px;
}

アイコンが表示される安全な領域を作成するためにパディングを増やした点に注目してください。これで、ボタンのレイアウトが乱れることがなくなります。

入力プレースホルダー

フォーラムでフローティング コールアウト モードを使用する場合、特にボタンが右側にある場合は、プレースホルダーが長すぎることによる問題を回避するために十分なテストを実施する必要があります。

1 つの解決策は、ボタンに対して position: relative を追加することです。これにより、ボタンがプレースホルダーを覆うようになります。

長い名前

このデザインでは、画像が左側に浮かび、著者の名前が右側に表示されます。右側の情報が長すぎる場合はどうなりますか?レイアウトが崩れることは間違いありません。

ここでの問題は、画像を左にフロートしただけで、著者名が画像の隣に移動することですが、これは著者名が短い場合にのみうまく機能します。

ページレイアウトをより適応性の高いものにするには、両方の要素の幅を広げる必要があります。より推奨されるアプローチは、このような小さなコンポーネントに適した flexbox を使用することです。

記事に長いリンクや単語が含まれている

記事には非常に長いハイパーリンクや単語が含まれている場合があり、ビューポートが広いと問題が発生しないことがあります。しかし、携帯電話やタブレットなどの小型デバイスでは、煩わしい水平スクロール バーが表示される可能性があります。

この問題には 2 つの解決策があります。

1) CSSの単語区切りを使用する

.記事本文 p {
  単語区切り: 全区切り;
}

word-break プロパティはブラウザによって動作が異なるため、使用時には十分にテストする必要があります。

2) 外側の要素にオーバーフローとテキストオーバーフローを追加する

.記事本文 p {
  オーバーフロー: 非表示;
  テキストオーバーフロー: 省略記号;
}

このソリューションは、長いリンクに適しています。長い単語の場合は、word-break を使用することをお勧めします。

記事タグが長すぎる

カードに記事ラベルを配置する場合、パディングを設定するだけでサイズを決めるのが理想的です。ラベルの内容が長すぎる場合、高さと幅をハードコーディングするとレイアウトが崩れる可能性があります。

ラベルの最小幅を設定することもできます。パディングで囲まれたラベル コンテンツ要素に min-width 属性を使用すると、幅が動的に変更され、問題が解決されます。

パーマリンク付きのセクションヘッダー

この例では、段落見出しの右側に「詳細を表示」リンクがあります。 CSS を記述する方法はいくつかありますが、その 1 つはリンクに絶対位置を使用することです。

タイトルが長すぎると、問題が発生する可能性があります。より良い解決策は、十分なスペースがない場合にリンクを自動的に次の行に圧縮するフレックスボックス レイアウトを使用することです。

.ヘッダー-2 {
  ディスプレイ: フレックス;
  flex-wrap: ラップ;
  コンテンツの両端揃え: スペースの間;
  アイテムの位置を中央揃えにします。
}

上記の技術は「整列モバイルパーセル」と呼ばれます。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  ウェブサイト構築経験概要

>>:  Vueがsweetalert2プロンプトコンポーネントを統合する際の問題についてお話ししましょう

推薦する

Docker に fastdfs イメージをインストールする際の注意事項

1. Docker環境を準備する2. fastdfsイメージを検索する 3. イメージをプルするdo...

HTML入力で値が変更されたときにリスナーイベントを追加することの簡単な分析

達成される効果多くの場合、入力ボックスの値の変化をリアルタイムで監視し、ブラウザを誘導してウェブサイ...

Centos7でのパーティションのフォーマットとマウントの実装

Linux では、ハードディスクの追加やパーティションの再マウントといった状況に頻繁に遭遇します。こ...

CSS を解析して画像のテーマカラー機能を抽出する (ヒント)

背景すべては、WeChat 技術グループのクラスメートが「写真の主な色を取得する方法はあるか」と尋ね...

Linuxは数字当てゲームのソースコードを実装する

シンプルな Linux 推測ゲームのソースコードゲームのルール:数字当てゲームは通常 2 人でプレイ...

ウェブページレイアウトに関する9つのヒント

<br />関連記事: Web コンテンツ ページ作成に関する 9 つの実用的な提案 W...

MySQL 論理バックアップとリカバリ テストの概要

目次1. データベース論理バックアップとはどのようなバックアップですか? 2. よく使われる論理バッ...

Alibaba Cloud Server で MySQL デュアルマシン ホットスタンバイを手動で実装する 2 つの方法

1. コンセプト1. ホットバックアップとバックアップの違いホット バックアップは高可用性 (HA)...

HTMLタグのtarget属性の使用法

1: <a> タグを使用してページにリンクする場合、target 属性の役割は誰もが知っ...

Linuxオンラインソフトウェアgccをオンラインでインストールする方法

Linux オンラインインストール関連コマンド: yum install: すべてインストールyum...

MySQLソースコマンドの使い方の紹介

目次ネット上の質問から生まれた思考MySQL ソースコマンドネット上の質問から生まれた思考今日仕事中...

CSS3セレクターの新機能の実装

目次基本的なセレクタ拡張属性セレクタ疑似クラスと疑似要素セレクター基本的なセレクタ拡張1. 子要素セ...

時系列転位修復ケースを実装するSQL

目次1. 要件の説明2. アイデアの概要1. 延長を要求する2. アイデアの概要3. SQLコード1...

ファイルアップロードスタイルの詳細を実装するjs

目次1. 概要2. オブジェクト作成のパラメータ3. 監視例4. 使用方法5. ソースコード1. 概...

Docker Machineの詳細な説明

Docker と Docker Machine の違いDocker はクライアント サーバー アーキ...