Saya memiliki Sass mixin berikut, yang merupakan modifikasi setengah lengkap dari contoh RGBa :
@mixin background-opacity($color, $opacity: .3) {
background: rgb(200, 54, 54); /* The Fallback */
background: rgba(200, 54, 54, $opacity);
}
Saya sudah menerapkan $opacity
ok, tapi sekarang saya terjebak dengan $color
bagian itu. Warna yang akan saya kirim ke mixin adalah HEX bukan RGB.
Penggunaan contoh saya adalah:
element {
@include background-opacity(#333, .5);
}
Bagaimana saya bisa menggunakan nilai HEX dalam mixin ini?
hex
, Anda tidak dapat melakukan ini.rgba($color, $alpha)
sukargba(#000000, 0.6)
karena hasilnya sama dan tidak perlu menemukan kembali roda. ;)Ada builtin mixin:
transparentize($color, $amount);
Jumlahnya harus antara 0 hingga 1;
Dokumentasi Sass Resmi (Modul: Sass :: Script :: Fungsi)
sumber
90%
transparan untuk mendapatkan hasilnya.1
$colorTheme: hsl(289, 65%, 47%); $crossOutColor: transparentize($colorTheme, 0.5);
bekerja untukku.SASS memiliki fungsi rgba () bawaan untuk mengevaluasi nilai.
Misalnya
Contoh menggunakan variabel Anda sendiri:
Keluaran:
sumber
Anda dapat mencoba solusi ini, adalah yang terbaik ... url ( github )
sumber
Jika Anda perlu mencampur warna dari transparansi variabel dan alpha, dan dengan solusi yang menyertakan
rgba()
fungsi Anda akan mendapatkan kesalahanSesuatu seperti ini mungkin berguna.
sumber