1. 複数の国境[1]背景: ボックスシャドウ、アウトライン 1. ボックスシャドウソリューションアイデア: box-shadow の 4 番目のパラメータ (拡張半径) のサイズを使用して、複数の投影を行うコード例: <div class="border-multiple"> 複数の境界線を実装するソリューション 1: box-shadow </div> .border-multiple { マージン: 50px 自動; パディング: 20px; 幅: 600ピクセル; 背景色: #fff; ボックスシャドウ: 0 0 0 10px #f0f, 0 0 0 15px #00f, 0 2px 15px 15px rgba( 0, 0, 0, .8); } 複数の境界線 - box-shadow まとめ: 1. 影はレイアウトに影響せず、ボックスのサイズにも影響されない 2. 解決策の概要コード例: <div class="border-outline"> 多重境界実装ソリューション2:概要 </div> .border-outline { マージン: 200px 自動; パディング: 20px; 幅: 600ピクセル; 背景色: #ff0; アウトライン: 3px 破線 #0f0; アウトラインオフセット: -10px; } 複数の境界線 – アウトライン まとめ: 1. 前提は2層の国境を実現することである 2. 角を丸くする[2]背景: ボックスシャドウ、アウトライン <div class="内側の丸め"> これを実現するには、box-shadow、アウトライン、「複数の境界線」を使用する必要があります。注: box-shadow の拡張半径は、コーナーの半径の 0.5 倍にする必要があります。</div> .内部丸め { 背景色: #ccc; マージン: 50px 自動; パディング: 20px; 幅: 600ピクセル; パディング: 20px; 境界線の半径: 20px; ボックスシャドウ: 0 0 0 10px #f00; アウトライン: 10px 実線 #f00; } 注: ボックスシャドウの拡張半径は、コーナーの半径の0.5倍である必要があります。厳密に言えば、(√2 - 1)倍である必要があり、ここでは計算を容易にするために0.5を採用しています。 内側の角の境界線 3. 半透明の境界線[3]背景知識: RGBA または HSLA カラー属性、背景クリップ <div class="border-opacity"> 半透明の境界線の実装</div> .border-opacity { マージン: 50px 自動; パディング: 20px; 幅: 600ピクセル; 境界線: 10px実線 hsla(0, 0%, 100%, 0.5); 背景色: #fff; 背景クリップ: パディングボックス; } まとめ: 半透明の境界線を実装するには、CSS3のbackground-clipプロパティを使用する必要があります。 半透明の境界線効果図 4. 連続した画像の境界線[4]背景知識: CSS グラデーション、基本的な境界線イメージ、背景クリップ <p class="border-image">border-image の実装原理は、9 グリッド拡張方式です。つまり、画像を 9 つの部分に分割し、要素境界の対応する端と角に適用します。 </p> <p class="border-image">画像の特定の部分を角に固定するのではなく、要素の幅、高さ、境界線の太さが変化すると、角に表示される画像領域も変化するようにします。 </p> .border-image { 境界線: 40px 透明の実線; 境界線画像: 33.334% url("http://csssecrets.io/images/stone-art.jpg"); パディング: 1em; 最大幅: 20em; フォント: 130%/1.6 Baskerville、Palatino、セリフ体; } .border-image:n番目の子(2) { 上マージン: 1em; 画像の繰り返し境界線: 丸い; } 境界線画像効果図 デメリット: 画像の特定の部分を角に固定するのではなく、角に表示される画像領域を要素の幅、高さ、境界線の太さに合わせて変更します。 コード例: <p class="contituuous-images">実装のアイデア: 1. CSS グラデーションと背景拡張機能を使用する 2. 背景画像に純白の単色背景を重ねる 3. 下の背景が境界領域から見えるようにするには、2 つの背景に異なる background-clip 値を指定する必要があります 4. 複数の背景の下部に背景色を設定します。純白の単色背景の効果をシミュレートするには、白から白への CSS グラデーションを使用する必要があります</p> .連続画像 { パディング: 1em; 境界線: 1em の透明な実線; /* 背景: 線形グラデーション(白、白)、 url(http://csssecrets.io/images/stone-art.jpg); 背景サイズ: カバー; 背景クリップ: パディングボックス、ボーダーボックス; 背景の原点: 境界ボックス; */ /* 背景は以下のように省略することもできます*/ 背景: 線形グラデーション(白、白) パディングボックス、 url(http://csssecrets.io/images/stone-art.jpg) ボーダーボックス 0 / カバー; 幅: 21em; パディング: 1em; オーバーフロー: 非表示; /* 境界線をドラッグできます*/ サイズ変更: 両方; フォント: 100%/1.6 Baskerville、Palatino、セリフ体; }
グラデーションパターンを使用して封筒スタイルの境界線を実現することもできます。コード例 グラデーションパターンを使用して封筒スタイルのボーダーを作成することもできます <p class="envelope-border">グラデーション パターンを使用して封筒スタイルの境界線を作成することもできます</p> .封筒の境界線{ パディング: 1em; 境界線: 0.5em 透明実線; 背景: linear-gradient(white, white) padding-box, repeating-linear-gradient(-45deg, red 0, red 12.5%, transparent 0, transparent 25%, #58a 0, #58a 37.5%, transparent 0, transparent 50%) 0 / 3em 3em; 最大幅: 20em; フォント: 100%/1.6 Baskerville、Palatino、serif;} 封筒の縁取り効果図 CSS でさまざまな境界線を実装するためのヒントに関するこの記事はこれで終わりです。CSS 境界線に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
<<: Linux でファイルのユーザーとグループを変更する方法
>>: 負のz-indexを持つ要素がクリックできない問題の解決策
この記事では、プログレスバーヒストグラムを実現するためのvue+echartsの具体的なコードを参考...
目次必要コアアイデアReactでスロットを実装する2つの方法必要コンポーネントを自分で書きました。コ...
MySQL 8.0をインストールする docker run -p 63306:3306 -e MYS...
序文アプリケーション シナリオ: おそらく、内部 Web サイトは外部ユーザーにアクセス可能である必...
問題の説明仕事で以下の成果を達成したいと考えています。 解決div タグに相対配置を追加し、絶対配置...
1. はじめにデータベース内のデータ量が一定レベルに達すると、システムパフォーマンスのボトルネックを...
プロジェクトを実行すると、リアルタイム更新、広告アニメーションの連続表示などの要件に遭遇することは避...
目次Reactの公式サイトではライフサイクルの説明を見ることができます次に、ネストされたコンポーネン...
目次1. 鏡を見つける2. RabbitMQイメージをダウンロードする3. RabbitMQコンテナ...
MySQL レプリケーション テーブルの詳細な説明テーブル構造、インデックス、デフォルト値などを含む...
感想:私はバックエンド開発者です。静的 (HTML) ページを取得すると、ページ構造と命名規則が極端...
HTML ページでは、ボタンやテキスト ボックスなどの視覚要素にフォーカスを設定したり、フォーカスを...
MySQL 最大接続数の表示と最大接続数の変更1. 最大接続数を確認する '%max_con...
ユーザーを作成します: 'oukele' によって識別されるユーザー 'ou...
現在実装されているのは、基本的な使用方法、クリア可能なボックス、パスワードボックスです。参考リンク:...