最近、画像上に半透明の背景でテキストを表示する必要があるという要件に遭遇しました。その効果は次のようになります。 要件.png この要件を確認した後の最初の反応は、CSS3 の不透明度を使用して要素の透明度を設定することです。 <!DOCTYPE html> <html lang="ja"> <ヘッド> <メタ文字セット="UTF-8"> <meta name="viewport" content="width=デバイス幅、初期スケール=1.0"> <meta http-equiv="X-UA-compatible" content="ie=edge"> <title>透明な背景、透明なテキスト</title> <スタイル> * { パディング: 0; マージン: 0; } 。容器 { 幅: 600ピクセル; 高さ: 400px; 背景: url('https://img1.dongqiudi.com/fastdfs3/M00/18/56/ChOxM1stHByARuNmAAGsJDKXtuM269.jpg') 繰り返しなし; 背景サイズ: カバー; -webkit-background-size: カバー; -o-background-size: カバー; 背景位置: 中央 0; } .デモ{ 位置: 絶対; 幅: 260ピクセル; 高さ: 60px; 上: 260px; 行の高さ: 60px; テキスト配置: 中央; 背景色: 黒; 不透明度: 0.5; } .demo p { 色: #FFF; フォントサイズ: 18px; フォントの太さ: 600; } </スタイル> </head> <本文> <div class="コンテナ"> <div class="demo"> <p>2018年ワールドカップ開幕まであと10日</p> </div> </div> </本文> </html> 効果は以下のとおりです。 背景は透明で、テキストも透明です。png これはニーズを満たしているように見えますが、完璧ではありません。不透明度を設定すると、要素全体が半透明になり、テキストがぼやけて表示されます。この解決策はお勧めできません。 実際、不透明度を設定することは、CSS で透明性を実現する唯一の方法ではありません。他に 2 つのタイプがあります:
ここでは RGBA を設定する方法を使用します。 <!DOCTYPE html> <html lang="ja"> <ヘッド> <メタ文字セット="UTF-8"> <meta name="viewport" content="width=デバイス幅、初期スケール=1.0"> <meta http-equiv="X-UA-compatible" content="ie=edge"> <title>背景は透明、テキストは不透明</title> <スタイル> * { パディング: 0; マージン: 0; } 。容器 { 幅: 600ピクセル; 高さ: 400px; 背景: url('https://img1.dongqiudi.com/fastdfs3/M00/18/56/ChOxM1stHByARuNmAAGsJDKXtuM269.jpg') 繰り返しなし; 背景サイズ: カバー; -webkit-background-size: カバー; -o-background-size: カバー; 背景位置: 中央 0; } .デモ{ 位置: 絶対; 幅: 260ピクセル; 高さ: 60px; 上: 260px; 行の高さ: 60px; テキスト配置: 中央; 背景色: rgba(0,0,0,0.5); } .demo p { 色: #FFF; フォントサイズ: 18px; フォントの太さ: 600; } </スタイル> </head> <本文> <div class="コンテナ"> <div class="demo"> <p>2018年ワールドカップ開幕まであと10日</p> </div> </div> </本文> </html> 効果は以下のとおりです。 背景は透明、テキストは不透明.png この設定を行うと、テキストがより鮮明に表示されます。 まとめ 実は、この要件を満たす方法は 1 つだけではありません。同じ位置に 2 つの DIV を使用し、1 つを半透明の背景の DIV、もう 1 つをテキストの DIV にすることもできます。この方法でも問題を解決できますが、絶対位置または負のマージン、および空のコンテンツを含む DIV が必要です。この方法は、次の例に示すように、一部のシナリオでは少し複雑に見える場合があります。そのため、実際の需要シナリオで具体的な問題を分析する必要があります。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 |
<<: Docker-compose チュートリアルのインストールとクイックスタート
1. 設置前によく掃除する rpm -pa | grep mysql または rpm -qa | g...
背景会社のコードは第三者に提供され、利用されます。ソースコードが完全に漏洩しないようにするには、提供...
目次概要機能性と読みやすさ空白括弧セミコロンインデント身元大文字と小文字を区別予約キーワード概要すべ...
Centos yumフォルダを開くコマンドcd /etc/yum.repos.d/を入力します。 w...
概要Linux 用のオープン ソース ネットワーク監視ツールは数多くあります。たとえば、帯域幅の使用...
JavaScript スクリプトは HTML 内のどこにでも埋め込むことができますが、いつ呼び出され...
CentOS 7.3のインストール手順を図解しました。具体的な内容は次のとおりです。この記事では、v...
<br />当サイトのオリジナルコンテンツですので、転載の際は出典を123WORDPRE...
垂直分割垂直分割とは、データテーブルの列を分割すること、つまり、多くの列を持つテーブルを複数のテーブ...
目次1. pidファイルの紹介2.ソケットファイルの紹介要約:ソケット ファイル: Unix ドメイ...
1. CSSファイルの命名規則提案: 文字、_、-、数字を使用します。文字で始まる必要があり、純粋な...
目次1. はじめに2. レンダリング3. コード4. 学生情報管理システムのメインインターフェース1...
ページの説明: メインページ: 名前 —> shishengzuotanhuichaxun ...
C++でMySQLに接続する際の参考情報です。具体的な内容は以下のとおりです。 MySQLCon ク...
以下の記事を読んだ後、プロジェクトをサーバーにデプロイできます。Tomcat、JDK、MySQL な...