用背景渐变的透明度设置不同颜色的背景渐变_html/css_WEB-ITnose
项目最近这几天正在做不同主题的颜色配置方案,要根据用户输入的颜色来配置整个主题的颜色,让人头疼的是,其中一个主题所有的列表头部背景色都是2到3组渐变值的线性渐变,也就是说,要根据用户输入的颜色值生成不同的但相似度很近的渐变颜色。我上网查了些资料,现在也有js支持根据你输入的网页内容自动填充渐变色,但是对于我这种js不是很好的人来说,还是想从css3上找点方法出来。
我发现css3的背景渐变中的透明度可以解决这个问题(前提是背景渐变的颜色是相近的)。
我在这里简单说一下css3背景渐变中的线性渐变。线性渐变的一般结构是:
background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
其中各个浏览器渲染不同,又分为:
Webkit:
background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
下面的写法是用于safari旧版本的
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0.1)), color-stop(40%, rgba(0, 0, 0, 0.1)), color-stop(98%, rgba(0, 0, 0, 0.2)),color-stop(100%, #FFFFFF));
Mozilla:
background-image: -moz-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
Firefox渲染渐变的写法和Safari大致相同,不同的是需要将渐变属性改为-moz-linear-gradient
Opera:
background-image: -o-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
按照上面的写法,让Opera浏览器渲染直接将属性改为-o-linear-gradient,是不是很简单?
IE:
IE比较顽固,不支持渐变,但是提供了渐变滤镜
filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#22FFFFFF', EndColorStr='#33000000');
说了这么多,大家对例子里rgba(0, 0, 0, 0.1) 中的0.1是不是很好奇?没错,解决这个头疼问题的关键就是它 - 渐变透明度。设置渐变透明度(值从0.1-0.9)可以使渐变颜色处在不同值的透明度下,也就是说通过透明度,背景可以呈现不同透明度下的背景颜色。
下面图片是用上面代码生成的背景渐变:
是不是看不出渐变透明(感觉灰灰的)?没错,因为颜色取值是从白到黑,那中间的过渡色自然就是灰色的了。但是如果你在加上一个背景颜色的话,那效果就出来了。
比如我们加个background-color: #92D050:
你只需要配置background-color, 就可以让背景呈现不同的渐变色。
完整的代码:
1 background-image: -moz-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);2 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0.1)), color-stop(40%, rgba(0, 0, 0, 0.1)), color-stop(98%, rgba(0, 0, 0, 0.2)),color-stop(100%, #FFFFFF));3 background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);4 background-image: -o-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);5 filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#22FFFFFF', EndColorStr='#33000000');6 background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);7 background-color: #669900;
其中rgba()中的颜色(rgb)一般取白色(255,255,255)或者黑色(0,0,0), 而透明度的设置就看你自己想要什么样的渐变效果了。
下面是几个不同渐变色的例子:
background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.9) 10%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.9) 2%, rgba(0, 0, 0, 0.5) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.3) 2%, rgba(0, 0, 0, 0.5) 40%, rgba(0, 0, 0, 0.2) 98%, rgba(255, 255, 255, 0.9) 99%);
所以如果能很好的运用背景渐变的透明度,可以在很大程度上定义统一的背景渐变色,而用户只需要输入一个颜色域,就可以把主题配置成想要的渐变效果。不过遗憾的是,这种方法就现在而言,只能适用于背景渐变颜色相近的主题。多余一种颜色的背景渐变还是得用这种写法
background: linear-gradient(to bottom, #396E8E 0%, #336888 29%, #225777 67%, #194E6E 100%);

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Ia adalah elemen peringkat blok, digunakan untuk membahagikan kawasan kandungan blok besar; Ia adalah elemen sebaris, sesuai untuk membungkus segmen kecil teks atau serpihan kandungan. Perbezaan khusus adalah seperti berikut: 1. Secara eksklusif menduduki baris, lebar dan ketinggian, margin dalaman dan luaran boleh ditetapkan, yang sering digunakan dalam struktur susun atur seperti tajuk, sidebars, dan lain -lain; 2. Jangan bungkus garisan, hanya menduduki lebar kandungan, dan digunakan untuk kawalan gaya tempatan seperti perubahan warna, berani, dan lain -lain; 3. Dari segi senario penggunaan, ia sesuai untuk susun atur dan struktur struktur kawasan keseluruhan, dan digunakan untuk pelarasan gaya berskala kecil yang tidak menjejaskan susun atur keseluruhan; 4. Apabila bersarang, ia boleh mengandungi sebarang elemen, dan unsur-unsur peringkat blok tidak boleh bersarang di dalamnya.

Untuk memulakan dengan HTML dengan cepat, anda hanya perlu menguasai beberapa tag asas untuk membina rangka web. 1. Struktur halaman adalah penting, dan, yang merupakan elemen akar, mengandungi maklumat meta, dan merupakan kawasan paparan kandungan. 2. Gunakan tajuk. Semakin tinggi tahap, semakin kecil nombor. Gunakan tag untuk segmen teks untuk mengelakkan melangkau tahap. 3. Pautan menggunakan tag dan sepadan dengan atribut HREF, dan imej menggunakan tag dan mengandungi atribut SRC dan ALT. 4. Senarai ini dibahagikan kepada senarai yang tidak teratur dan senarai yang diperintahkan. Setiap entri diwakili dan mesti bersarang dalam senarai. 5. Pemula tidak perlu memaksa menghafal semua tag. Lebih cekap untuk menulis dan memeriksa mereka semasa anda menulis. Menguasai struktur, teks, pautan, gambar dan senarai untuk membuat laman web asas.

Kunci untuk menambah imej dalam HTML adalah menggunakan tag IMG dan menetapkan sifat dengan betul. Pertama, anda mesti menggunakan tag dan tetapkan atribut SRC untuk menentukan laluan imej. Kedua, adalah disyorkan untuk menambah atribut alt untuk menyediakan teks alternatif; Laluan ini boleh menjadi jalan relatif atau jalan mutlak, dan anda perlu memberi perhatian kepada kes, sokongan format dan konfigurasi pelayan; Di samping itu, gaya gambar boleh dikawal melalui CSS untuk meningkatkan respons dan estetika.

LinkRel = "Preload" adalah teknologi yang mengoptimumkan prestasi pemuatan halaman dan digunakan untuk memuat sumber kritikal terlebih dahulu. Tujuan terasnya adalah untuk mengutamakan pemuatan sumber yang penting untuk rendering skrin utama, seperti fon, CSS/JS utama dan imej skrin utama. Perhatikan apabila menggunakan: 1. Tetapkan atribut dengan betul untuk menentukan jenis sumber; 2. Elakkan penyalahgunaan dan mencegah penggunaan jalur lebar yang berlebihan; 3. Pastikan sumber -sumber itu sebenarnya akan digunakan, jika tidak, ia akan menyebabkan pembaziran permintaan; 4. Tambah atribut Crossorigin kepada sumber-sumber silang domain. Kaedah penulisan yang tidak betul seperti kekurangan atribut akan menyebabkan pramuat tidak sah. Penggunaan rasional boleh meningkatkan kecekapan pemuatan halaman, jika tidak, ia mungkin tidak produktif.

Shadowdom adalah teknologi yang digunakan dalam teknologi komponen web untuk membuat subtrees DOM terpencil. 1. Ia membolehkan gunung struktur DOM bebas pada elemen HTML biasa, dengan gaya dan tingkah laku sendiri, dan tidak menjejaskan dokumen utama; 2. Dibuat melalui JavaScript, seperti menggunakan kaedah lampiran dan menetapkan mod untuk dibuka; 3. Apabila digunakan dalam kombinasi dengan HTML, ia mempunyai tiga ciri utama: struktur yang jelas, pengasingan gaya dan unjuran kandungan (slot); 4. Nota termasuk debugging kompleks, kawalan skop gaya, overhead prestasi dan masalah keserasian rangka kerja. Singkatnya, Shadowdom menyediakan keupayaan enkapsulasi asli untuk membina komponen UI yang boleh diguna semula dan tidak mencemarkan.

HTML menyediakan tiga jenis senarai untuk menyusun kandungan. 1. Senarai tidak teratur () digunakan untuk penyertaan yang tidak memerlukan pesanan, seperti senarai fungsi atau bahan; 2. Senarai yang diperintahkan () digunakan untuk kandungan berurutan, seperti keterangan langkah, dan menyokong pelbagai format penomboran; 3. Senarai Penerangan (,,) digunakan untuk memasangkan terma dan penerangan, seperti kamus atau spesifikasi produk; Di samping itu, ia juga menyokong senarai bersarang, yang boleh menambah sublists di bawah entri utama untuk menganjurkan maklumat yang kompleks, dengan itu meningkatkan kebolehbacaan dan kebolehcapaian halaman.

❌youcannotnesttagsinsideanothertagbecauseit'sinvalidhtml; browsersautomomatikclosethefirstbeforeopeningthenext, drectinginseparateParagraphs.instead, useinlineelements,

Kaedah penempatan gaya perlu dipilih mengikut tempat kejadian. 1. Dalam talian sesuai untuk pengubahsuaian sementara unsur tunggal atau kawalan JS dinamik, seperti perubahan warna butang dengan operasi; 2. CSS dalaman sesuai untuk projek dengan beberapa halaman dan struktur mudah, yang mudah untuk pengurusan gaya berpusat, seperti tetapan gaya asas halaman log masuk; 3. Keutamaan diberikan untuk menggunakan semula, penyelenggaraan dan prestasi, dan lebih baik untuk memecah fail CSS pautan luaran untuk projek besar.
