Misalnya jika saya memiliki HTML berikut:
<div class="someDiv"></div>
dan CSS ini:
.opacity {
filter:alpha(opacity=60);
-moz-opacity:0.6;
-khtml-opacity: 0.6;
opacity: 0.6;
}
.radius {
border-top-left-radius: 15px;
border-top-right-radius: 5px;
-moz-border-radius-topleft: 10px;
-moz-border-radius-topright: 10px;
}
.someDiv {
background: #000; height: 50px; width: 200px;
/*** How can I reference the opacity and radius classes here
so this div has those generic rules applied to it as well ***/
}
Seperti bagaimana dalam bahasa skrip Anda memiliki fungsi generik yang sering digunakan ditulis di bagian atas skrip dan setiap kali Anda perlu menggunakan fungsi itu, Anda cukup memanggil fungsi alih-alih mengulangi semua kode setiap saat.
.radius
, seperti.radius, .another, .element{/* css*/}
. Itu akan menghemat kode tambahan Anda, tetapi membuatnya mungkin kurang dapat dibaca.Jawaban:
Tidak, Anda tidak dapat mereferensikan satu kumpulan aturan dari yang lain.
Namun, Anda dapat menggunakan kembali pemilih pada beberapa set aturan dalam stylesheet dan menggunakan beberapa pemilih pada satu set aturan (dengan memisahkannya dengan koma ).
Anda juga dapat menerapkan beberapa kelas ke satu elemen HTML (atribut kelas membutuhkan daftar yang dipisahkan spasi).
Salah satu dari pendekatan tersebut seharusnya menyelesaikan masalah Anda.
Mungkin akan membantu jika Anda menggunakan nama kelas yang menjelaskan mengapa sebuah elemen harus diberi gaya alih-alih bagaimana seharusnya gaya. Tinggalkan caranya di stylesheet.
sumber
fieldset legend
kelabel.legend
. Saya mengerti tapi menyesal..someDiv.other{/*style...*/}
ini : dengan cara ini, hanya elemen yang memiliki kedua kelas yang terpengaruhAnda tidak bisa kecuali Anda menggunakan beberapa jenis CSS tambahan seperti SASS . Namun sangat masuk akal untuk menerapkan kedua kelas tambahan tersebut
.someDiv
.Jika
.someDiv
unik saya juga akan memilih untuk memberikan id dan mereferensikannya di css menggunakan id.sumber
Jika Anda bersedia dan dapat menggunakan sedikit jquery, Anda dapat melakukan ini:
Jika Anda memiliki javascript yang sudah memproses halaman atau Anda dapat menyertakannya di suatu tempat dalam tag <script>. Jika demikian, bungkus di atas dalam fungsi siap dokumen:
Saya baru-baru ini menemukan ini saat memperbarui plugin wordpress. Mereka telah diubah yang menggunakan banyak arahan "! Penting" di seluruh css. Saya harus menggunakan jquery untuk memaksa gaya saya karena keputusan jenius untuk menyatakan! Penting pada beberapa tag.
sumber
Anda dapat dengan mudah melakukannya dengan pra-prosesor SASS dengan menggunakan @extend.
Sebaliknya, Anda juga bisa menggunakan JavaScript (jQuery):
Cara termudah tentu saja dengan menambahkan beberapa kelas langsung di HTML
sumber
Cukup tambahkan kelas ke html Anda
sumber
Saya mengalami masalah ini kemarin. @ Jawaban Quentin tidak apa-apa:
tapi saya membuat fungsi javascript untuk mensimulasikan pewarisan di css (seperti .Net):
dan css yang setara:
dan HTML yang setara:
Saya mengujinya dan berhasil untuk saya, meskipun aturan ada di file css yang berbeda.
sumber
Anda dapat menggunakan fungsi var () .
Contoh:
sumber