CSS memungkinkan kita untuk menggabungkan beberapa jenis selector menjadi sebuah selector gabungan, misalnya kita butuh selector untuk mencari seluruh tag <em> yang berapa di dalam tag <h1>, atau seluruh tag <h1> yang didalamnya terdapat tag <a> dengan class “judul”.
Agar mudah memahami cara penggabungan selector CSS ini kita akan mempersiapkan sebuah halaman HTML dummy untuk bahan pembelajaran. Silahkan ketik kode HTML berikut, dan save sebagai belajar_css.html
Halaman HTML diatas merupakan halaman HTML sederhana yang terdiri dari tag header (<h2>), paragraf(<p>), dan list (<ol>). Jika kamu belum memahami tag-tag HTML diatas, keseluruhan tag ini telah kita bahas pada Tutorial Belajar HTML.
Perhatikan juga pada bagian <head> dari belajar_css.html tersebut saya juga menyediakan tag <style> yang sebentar lagi akan kita isi dengan CSS. Beberapa dari tag HTML yang ada juga telah memiliki atribut seperti “class” dan “id” yang siap di-“style” menggunakan CSS.
Tujuan pertama kita, adalah:
Untuk contoh extreme, katakan kita memiliki halaman HTML yang cukup rumit, sehingga kita menginginkan warna merah untuk “seluruh tag <i> yang berada di dalam tag <span>, dimana tag <span> tersebut harus berada di dalam tag <h2>”, maka kode CSSnya adalah:
Melanjutkan pembahasan selector, untuk ujuan keempat kita:
Sebagai tujuan terakhir dari tutorial cara penggunaan selector css ini:
Sampai disini setidaknya kamu sudah bisa membaca maksud dari sebagian besar selector dalam CSS. Sebagai contoh, kamu tentunya tidak bingung membaca kode CSS berikut:
Agar mudah memahami cara penggabungan selector CSS ini kita akan mempersiapkan sebuah halaman HTML dummy untuk bahan pembelajaran. Silahkan ketik kode HTML berikut, dan save sebagai belajar_css.html
<!DOCTYPE html> <html> <head> <title>Belajar CSS</title> <style type="text/css"> </style> </head> <body> <h2 class="judul">Belajar CSS</h2> <p> Ini <strong>adalah</strong> sebuah <em>paragraf</em> </p> <p id="belajar_html" class="paragraf" >Saya sedang belajar HTML dari <a href="http://www.cowaska.blogspot.com" target="_blank">Cowaska</a> akan terbuka pada tab baru</p> <p id="belajar_css" class="paragraf"> Saya sedang belajar CSS, mohon jangan diganggu</p> <br/> <h3 class="judul subheader">Daftar Belanjaan</h3> <ol> <li><em>Minyak Goreng</em></li> <li>Sabun Mandi</li> <li>Deterjen</li> <li>Shampoo</li> <li>Obat Nyamuk</li> </ol> </body> </html>
Halaman HTML diatas merupakan halaman HTML sederhana yang terdiri dari tag header (<h2>), paragraf(<p>), dan list (<ol>). Jika kamu belum memahami tag-tag HTML diatas, keseluruhan tag ini telah kita bahas pada Tutorial Belajar HTML.
Perhatikan juga pada bagian <head> dari belajar_css.html tersebut saya juga menyediakan tag <style> yang sebentar lagi akan kita isi dengan CSS. Beberapa dari tag HTML yang ada juga telah memiliki atribut seperti “class” dan “id” yang siap di-“style” menggunakan CSS.
Tujuan pertama kita, adalah:
- Membuat seluruh tag header <h2> berwarna biru
h2 { color: blue; }Tujuan kedua adalah :
- Membuat seluruh tag header <h3> juga berwarna biru
h2 { color: blue; } h3 { color: blue; }Namun CSS memiliki cara yang lebih efisien jika yang kita inginkan adalah style yang sama untuk kedua tag. Kita bisa menggabungkan kode CSS diatas menjadi:
h2 , h3 { color: blue; }Tanda koma (“,”) sebagai pemisah menginstruksikan kepada browser bahwa kedua tag akan berwarna biru. Tidak ada batasan seberapa banyak selector yang bisa digunakan. Katakan kita ingin seluruh tag header dari <h1> sampai <h6> bewarna biru, maka kode CSSnya adalah:
h1 , h2, h3 , h4, h5 , h6{ color: blue; }Tujuan ketiga :
- Seluruh tag <strong> yang berada di dalam tag <p> berwarna merah
strong { color:red; }Namun kode CSS tersebut akan membuat seluruh tag <strong> dimanapun, termasuk tag <strong> yang berada di dalam tag <h1> akan berwarna merah. Sehingga, jika ditambahkan syarat hanya untuk tag <strong> yang berada di dalam tag <p>, maka kita harus menulis selector CSS menjadi:
p strong { color:red; }Maksud dari kode “p strong” adalah seluruh tag <strong> yang berada di dalam tag <p>. perhatikan bahwa kedua tag dipisahkan dengan tanda spasi. (Selector: p strong, berbeda pengertiannya dengan selector: p, strong)
Untuk contoh extreme, katakan kita memiliki halaman HTML yang cukup rumit, sehingga kita menginginkan warna merah untuk “seluruh tag <i> yang berada di dalam tag <span>, dimana tag <span> tersebut harus berada di dalam tag <h2>”, maka kode CSSnya adalah:
h2 span i { color:red; }Yang perlu diingat dalam urutan ini adalah: tag yang dikenai style hanya tag yang paling terakhir, dimana dalam contoh diatas, hanya tag <i> saja yang akan bewarna merah.
Melanjutkan pembahasan selector, untuk ujuan keempat kita:
- Seluruh tag <h2> yang memiliki class judul, dan seluruh tag yang memiliki class paragraf menjadi italic (huruf miring)
h2.judul , .paragraf { font-style: italic; }h2.judul diperlukan untuk mencari seluruh tag h2 dengan class judul, sedangkan .paragraf digunakan untuk mencari seluruh tag yang memiliki class paragraf, apapun tag tersebut.
Sebagai tujuan terakhir dari tutorial cara penggunaan selector css ini:
- Ubah ukuran text menjadi 14pt untuk tag yang memiliki id “belajar_html”, tag p dengan id “belajar_css” dan seluruh tag h3 yang memiliki class “subheader”
#belajar_html, p#belajar_css, h3.subheader { font-size:14pt; }Sebagai penutup, hasil akhir dari halaman HTML belajar_css.html kita adalah sebagai berikut:
<!DOCTYPE html> <html> <head> <title>Belajar CSS</title> <style type="text/css"> </style> </head> <body> <h2 class="judul">Belajar CSS</h2> <p> Ini <strong>adalah</strong> sebuah <em>paragraf</em> </p> <p id="belajar_html" class="paragraf" >Saya sedang belajar HTML dari <a href="http://www.cowaska.blogspot.com" target="_blank">Cowaska</a> akan terbuka pada tab baru</p> <p id="belajar_css" class="paragraf"> Saya sedang belajar CSS, mohon jangan diganggu</p> <br/> <h3 class="judul subheader">Daftar Belanjaan</h3> <ol> <li><em>Minyak Goreng</em></li> <li>Sabun Mandi</li> <li>Deterjen</li> <li>Shampoo</li> <li>Obat Nyamuk</li> </ol> </body> </html>Output Tampilannya :
Sampai disini setidaknya kamu sudah bisa membaca maksud dari sebagian besar selector dalam CSS. Sebagai contoh, kamu tentunya tidak bingung membaca kode CSS berikut:
table#daftar_hadir, table#daftar_kuliah { font-size:14pt; } div.header, div.footer, div#main_menu { width:960px; }contoh selector CSS yang kedua merupakan selector yang sering digunakan untuk manipulasi tag div dalam merancang layout desain web.