Saya ingin membuat latar belakang menu daftar menghilang dengan menggunakan opacity, tanpa mempengaruhi font. Apakah mungkin dengan CSS3?
Jawaban:
sekarang Anda dapat menggunakan rgba di properti CSS seperti ini:
.class {
background: rgba(0,0,0,0.5);
}
0,5 adalah transparansi , ubah nilainya sesuai desain Anda.
Demo langsung http://jsfiddle.net/EeAaB/
info lebih lanjut http://css-tricks.com/rgba-browser-support/
rgba('black', 0.5)
?
ya, itu mungkin. cukup gunakan sintaks-rgba untuk warna latar belakang Anda.
.menue{
background-color: rgba(255, 0, 0, 0.5); //semi-transparent red
}
Berikut adalah contoh kelas menggunakan CSS bernama warna:
.semi-transparent {
background: yellow;
opacity: 0.25;
}
Ini menambahkan latar belakang 25% buram (berwarna) dan 75% transparan.
CAVEAT
Sayangnya, opacity akan mempengaruhi seluruh elemen yang dilampirkan padanya.
Jadi jika Anda memiliki teks dalam elemen itu, itu akan mengatur teks menjadi 25% opacity juga. :-(
Cara untuk melewati ini adalah dengan menggunakan metode rgba
atau hsla
untuk menunjukkan transparansi sebagai bagian dari "warna" latar belakang yang Anda inginkan. Ini memungkinkan Anda untuk menentukan transparansi latar belakang, terlepas dari transparansi item lain di elemen Anda.
Berikut 3 cara untuk menyetel latar belakang biru pada transparansi 75%, tanpa memengaruhi elemen lain:
background: rgba(0%, 0%, 100%, 0.75)
background: rgba(0, 0, 255, 0.75)
background: hsla(240, 100%, 50%, 0.75)
Dalam hal ini background-color:rgba(0,0,0,0.5);
adalah cara terbaik. Sebagai contoh:background-color:rgba(0,0,0,opacity option);
Untuk mencapainya, Anda harus memodifikasi background-color
elemennya.
Cara membuat warna (semi-) transparan:
Nama warna CSS transparent
menciptakan warna yang sepenuhnya transparan.
Pemakaian:
.transparent{
background-color: transparent;
}
Menggunakan rgba
atau hsla
fungsi warna, yang memungkinkan Anda menambahkan saluran alfa (opasitas) ke fungsi rgb
dan hsl
. Nilai alfa mereka berkisar dari 0 - 1.
Pemakaian:
.semi-transparent-yellow{
background-color: rgba(255, 255, 0, 0.5);
}
.transparent{
background-color: hsla(0, 0%, 0%, 0);
}
Selain solusi yang telah disebutkan, Anda juga dapat menggunakan format HEX dengan nilai alfa ( #RRGGBBAA
atau #RGBA
notasi ).
Itu cukup baru (dimuat oleh CSS Color Module Level 4), tetapi sudah diterapkan di browser yang lebih besar (maaf, tidak ada IE).
Ini berbeda dari solusi lain, karena ini memperlakukan saluran alfa (opasitas) sebagai nilai heksadesimal juga, membuatnya berkisar dari 0 - 255 ( FF
).
Pemakaian:
.semi-transparent-yellow{
background-color: #FFFF0080;
}
.transparent{
background-color: #0000;
}
Anda juga dapat mencobanya:
transparent
:rgba()
:#RRGGBBAA
:innerHTML =
(hei, setidaknya itu lebih baik daripada peringatan dan document.write
mereka biasa melakukannya di tahun 2012, tetapi masih tidak ada manipulasi DOM, di luar tutorial jQuery kecuali untuk sedikit tutorial di mana mereka mencantumkan metode yang relevan satu per bab, dan bahkan kemudian itu hanya seletion - dan ya, mereka mendaftar document.write
). Tutorial XHR mereka menggunakan readyStateChange dan bukan onLoad (didukung sejak IE7). Oh dan solusi mereka untuk fungsi di JSON? Stringify mereka untuk dievaluasi nanti
Ya, Anda hanya bisa teks biasa sebagai
.someDive{
background:transparent
}