CSS3 で六角形の境界線を実装するサンプルコード

CSS3 で六角形の境界線を実装するサンプルコード

一番外側の boxF は 120 度回転し、2 番目の boxS は -60 度回転し、3 番目の boxT は再び -60 度回転します。これで元の位置に戻り、3 番目のレイヤーの div 背景に画像が配置されます。最初の 2 つの div レイヤーには何もないので、六角形を取得するために回転するだけに使用されるため、1 番目と 2 番目の div レイヤーには visibility: hidden が設定されています。3 番目の div レイヤーは画像用であり、表示する必要があるため、 visibility: visible が設定されています。

回転後には必ず余分な部分ができるので、3 つの div すべてに overflow:hidden を設定します。回転して余分な部分を非表示にすると、必要な六角形が得られます。

知らせ:

1. 3 番目のレイヤー div に visibility: visible; を設定しない場合は、デフォルトで 2 番目のレイヤー div (boxS) の visibility: hidden; が継承されます。
2. div の幅と高さの比率は 4:5 である必要があります。そうでない場合、六角形にはなりません。

実施原則:

•transform: rotate(120deg); 画像の回転
•overflow:hidden; オーバーフロー非表示
•visibility: hidden; も hidden で、display:none; と似ていますが、違いは、非表示であっても、Web ページ上の位置を占める点です。

実装コード:

HTMLコード

<div class="boxF">
    <div class="boxS">
        <div class="boxT" style="背景画像: url(tupian.jpg);"></div>
    </div>
</div>

CSSコード

.boxF, 
.boxS, 
.boxT, 
。かぶせる {
 幅: 200ピクセル;
 高さ: 250px;
 オーバーフロー: 非表示;
}
.boxF, 
.boxS {
 可視性: 非表示;
}
.boxF {
 変換: 回転(120度);
 フロート: 左;
 左マージン: 10px;
 -ms-transform:回転(120度);
 -moz-transform:回転(120度);
 -webkit-transform: 回転(120度);
}
.boxS {
 変換: 回転(-60度);
 -ms-transform:回転(-60度);
 -moz-transform:回転(-60度);
 -webkit-transform: 回転(-60度);
}
.boxT {
 変換: 回転(-60度);
 背景: 繰り返しなし 50% 中央;
 背景サイズ: 125% 自動;
 -ms-transform:回転(-60度);
 -moz-transform:回転(-60度);
 -webkit-transform: 回転(-60度);
 可視性: 可視;
}

要約する

上記は、エディターが紹介した CSS3 で六角形の境界線を実装する方法のサンプル コードです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

<<:  HTML要素のID属性とName属性の違い

>>:  Mac M1 での Nginx のマルチサイト構成の実装

推薦する

LinuxサーバーにGRUBをインストールする手順

Linux サーバーに GRUB をインストールする方法クラウド移行ツールを使用して、CentOS ...

HTML メタの使用例

使用例コードをコピーコードは次のとおりです。 <!DOCTYPE html> <!...

MySQL での replace と replace into の使い方の説明

MySQL の replace と replace into はどちらも頻繁に使用される関数です。r...

一般的なMysql DDL操作の概要

図書館管理ライブラリを作成する データベースを作成します [存在しない場合] ライブラリ名;ライブラ...

VueはAmapを使用して都市の位置特定を実現

この記事では、Amapを使用して都市の位置特定を実現するVueの具体的なコードを参考までに共有します...

HTML ではスペースはどのように表現されますか (どのような意味ですか)?

Web 開発では、次のような文字によく遭遇します: &nbsp;これは実際には HTML が...

Jenkins を通じて None のイメージを定期的にクリーンアップする方法

序文継続的なコード配信のプロセスで、Jenkins を利用して Docker イメージを作成すると、...

jsは双方向データバインディング(アクセサ監視)を実現します

この記事の例では、双方向データバインディングを実現するためのjsの具体的なコードを参考までに共有して...

動的画像読み込み技術の応用とjquery.lazyloadプラグインの使用例

アプリケーション例ウェブサイト http://www.uhuigou.net画像の動的読み込みは目新...

MySql の忘れたパスワードの変更方法はバージョン 5.7 以上に適しています

1. まずmysqld.exeプロセスを停止します2. cmd を開き、mysql の bin ディ...

LinuxにNginxを素早くインストールする方法

目次nginxとは1. 必要な依存関係をダウンロードする2. nginxの圧縮パッケージをダウンロー...

MySQL Truncate の使用方法の詳細な説明

目次MySQL 切り捨ての使用1. 構文を切り捨てる2. Truncateの使用上の注意3. TRU...

MySQL のデッドロックとデータベースおよびテーブル シャーディングの問題の詳細な説明

MySQL 運用上の問題点を記録します。ビジネスシナリオと問題の説明外部インターフェースをリクエスト...

誤って削除されたデータを復元するための mysqlbinlog コマンドを使用した mysql の実装

実験環境: MYSQL 5.7.22バイナリログを有効にするログ形式 MIXED実験プロセス: 1....

CocosCreatorでゲームコントローラーを使用する方法

目次1. シーンレイアウト2. ハンドルリスナーを追加する1. イベントの変更を監視する2. 座標設...