Rumah > Artikel > hujung hadapan web > Bagaimanakah saya boleh mencipta heksagon dengan isian dan garis besar warna yang berbeza menggunakan CSS?
Bentuk Heksagon dengan Sempadan dan Isi
Kod berikut mencipta bentuk heksagon dengan warna latar belakang pepejal dan sempadan lutsinar:
.hex:before { content: " "; width: 0; height: 0; border-bottom: 30px solid #6C6; border-left: 52px solid transparent; border-right: 52px solid transparent; position: absolute; top: -30px; } .hex { margin-top: 30px; width: 104px; height: 60px; background-color: #6C6; position: relative; } .hex:after { content: ""; width: 0; position: absolute; bottom: -30px; border-top: 30px solid #6C6; border-left: 52px solid transparent; border-right: 52px solid transparent; }
Untuk mencapai heksagon dengan isian dan garis besar warna yang berbeza, pendekatan yang berbeza diperlukan. Berikut ialah kaedah alternatif menggunakan heksagon berlapis:
<code class="html"><div class="hex"> <div class="hex inner"> <div class="hex inner2"></div> </div> </div></code>
<code class="css">.hex { margin-top: 70px; width: 208px; height: 120px; background: #6C6; position: relative; } .hex:before, .hex:after { content:""; border-left: 104px solid transparent; border-right: 104px solid transparent; position: absolute; } .hex:before { top: -59px; border-bottom: 60px solid #6C6; } .hex:after { bottom: -59px; border-top: 60px solid #6C6; } .hex.inner { background-color:blue; -webkit-transform: scale(.8, .8); -moz-transform: scale(.8, .8); transform: scale(.8, .8); z-index:1; } .hex.inner:before { border-bottom: 60px solid blue; } .hex.inner:after { border-top: 60px solid blue; } .hex.inner2 { background-color:red; -webkit-transform: scale(.8, .8); -moz-transform: scale(.8, .8); transform: scale(.8, .8); z-index:2; } .hex.inner2:before { border-bottom: 60px solid red; } .hex.inner2:after { border-top: 60px solid red; }</code>
Kaedah ini menghasilkan tiga lapisan heksagon dengan saiz berkurangan dan warna berbeza, memberikan rupa heksagon terisi dengan garis besar.
Atas ialah kandungan terperinci Bagaimanakah saya boleh mencipta heksagon dengan isian dan garis besar warna yang berbeza menggunakan CSS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!