Rumah > hujung hadapan web > tutorial css > Bagaimana Membuat Elemen Kanak-Kanak Sesuai dengan Sempadan Melengkung Ibu Bapa dalam CSS?

Bagaimana Membuat Elemen Kanak-Kanak Sesuai dengan Sempadan Melengkung Ibu Bapa dalam CSS?

Patricia Arquette
Lepaskan: 2024-10-29 08:18:02
asal
884 orang telah melayarinya

How to Make Child Elements Conform to Parent's Curved Borders in CSS?

Memotong Elemen Anak Dalam Sempadan Melengkung Ibu Bapa

Dalam CSS, jika elemen anak (#dalam) melangkaui sempadan melengkung induknya (#luar), ada nampaknya percanggahan tingkah laku antara ibu bapa dan anak. Artikel ini meneroka sebab perkara ini berlaku dan menyediakan penyelesaian untuk memaksa elemen kanak-kanak mematuhi sempadan melengkung ibu bapa.

Isu Kanak-kanak Bertindih

Apabila elemen induk ( #luar) mempunyai sempadan melengkung menggunakan jejari sempadan dan elemen anak (#dalam) melangkaui sempadan ini, ia boleh membuat pertindihan. Ini kerana elemen kanak-kanak tidak dikekang secara lalai untuk menghormati sempadan melengkung ibu bapa mereka.

Limpahan: Penyelesaian Tersembunyi

Mengikut spesifikasi CSS, latar belakang dan kesan lain yang klip ke sempadan, seperti limpahan, juga harus klip ke lengkung. Oleh itu, menetapkan limpahan: tersembunyi pada elemen induk (#outer) harus menyelesaikan isu ini. Walau bagaimanapun, penyelesaian ini mungkin tidak berfungsi dalam penyemak imbas lama seperti Firefox 3.6 dan ke bawah.

Mozilla-Specific Hack

Untuk Firefox 3.6 dan ke bawah, penggodaman khusus diperlukan. Dengan memberikan lengkung pada sempadan individu, elemen anak (#inner) boleh dipaksa untuk mematuhi sempadan lengkung ibu bapa. Contohnya:

<code class="css">#inner {
    border-top-right-radius: 10px; -moz-border-radius-topright: 10px; -webkit-border-top-right-radius: 10px;
    border-top-left-radius: 10px; -moz-border-radius-topleft: 10px; -webkit-border-top-left-radius: 10px;
}</code>
Salin selepas log masuk

Godam ini memastikan elemen kanak-kanak (#dalaman) menghormati sempadan lengkung induknya (#luar), walaupun dalam 浏览器 yang lebih tua.

Penyelesaian Dikemas Kini

Dalam penyemak imbas baharu seperti Firefox 4 dan ke atas, gabungan limpahan: tersembunyi dan jejari sempadan sudah memadai untuk memaksa elemen anak mematuhi sempadan melengkung ibu bapa mereka. Oleh itu, penyelesaian yang dikemas kini ialah:

<code class="css">#outer {
  overflow: hidden;
}

#inner {
  -moz-border-radius: 10px 10px 0 0;
}</code>
Salin selepas log masuk

Ini memastikan keserasian merentas penyemak imbas untuk memotong elemen anak ke sempadan melengkung ibu bapa mereka.

Atas ialah kandungan terperinci Bagaimana Membuat Elemen Kanak-Kanak Sesuai dengan Sempadan Melengkung Ibu Bapa dalam CSS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan