Jadual Kandungan
nilai dan
Atribut Custom
sifat logik
juga memperkenalkan fungsi
Ini bukan senarai lengkap semua plugin CSS yang tersedia, tetapi hanya pilihan beberapa plugin yang lebih menarik. Anda boleh meneroka lebih banyak plugin pada postcss.parts.
soalan yang sering ditanya mengenai membolehkan ciri CSS yang akan datang dengan PostCSS
Rumah hujung hadapan web tutorial css Membolehkan Ciri CSS yang akan datang dengan PostCSS

Membolehkan Ciri CSS yang akan datang dengan PostCSS

Feb 21, 2025 am 09:30 AM

Enabling Upcoming CSS Features with PostCSS

yang diwarisi dalam artikel sebelumnya "Panduan Postcss: Pemilih dan pertanyaan media yang lebih baik", artikel ini akan meneroka lebih banyak plug-in PostCSS yang memanjangkan fungsi CSS. Artikel sebelumnya memberi tumpuan kepada peningkatan struktur helaian gaya dengan memperluaskan pemilih dan pertanyaan media, sementara artikel ini akan memberi tumpuan kepada cara melaksanakan sifat dan nilai baru dalam spesifikasi yang akan datang. Plugin yang diterangkan dalam artikel ini melaksanakan fungsi yang berbeza yang boleh digunakan dengan berkesan atau secara individu mengikut keperluan anda.

mari kita mulakan dengan plugin kegemaran saya.

mata utama

    Plug-in PostCSS boleh digunakan untuk melaksanakan sifat dan nilai baru dalam spesifikasi CSS yang akan datang, dengan berkesan memperluaskan fungsi CSS. Plugin ini boleh digunakan bersama atau secara individu mengikut keperluan pemaju.
  • PostCSS membolehkan pemaju menggunakan ciri CSS masa depan sebelum pelayar dilaksanakan secara rasmi. Plugin
  • menambah sokongan untuk nilai postcss-initial dan initial gabungan, dan plugin all: initial secara automatik menetapkan semula gaya unsur-unsur tahap blok dan komponen. postcss-autoreset Plugin
  • melaksanakan fungsi postcss-color-function baru yang membolehkan pemaju menggunakan satu atau lebih "pelaras warna" berfungsi untuk mengubahsuai warna yang mendasari. Plugin color() melaksanakan fungsi postcss-color-hwb baru untuk menentukan warna HWB; hwb() postcss-color-gray PostCSS menyediakan peluang yang menjanjikan untuk mengadopsi dan menilai ciri -ciri CSS baru awal. Pemaju dinasihatkan untuk menulis helaian gaya dari perspektif yang sama sekali baru dan menyenaraikan ciri -ciri yang boleh meningkatkan produktiviti. gray()
  • Pilih tetapan semula ke peringkat seterusnya
CSS3 memperkenalkan dua ciri yang bagus:

nilai dan

atribut. Nilai

digunakan dengan nilai initial dan all, yang membolehkan anda menetapkan semula harta kepada nilai asalnya. Atribut initial digunakan sebagai atribut singkat, yang menetapkan semula semua atribut ke salah satu daripada tiga negeri ini. Walaupun kedua -duanya menarik dalam diri mereka, apabila digunakan bersama, mereka membolehkan anda dengan cepat menetapkan semula semua gaya elemen tertentu dan menghalangnya daripada mewarisi gaya elemen ibu bapa halaman. Ini adalah satu lagi langkah dalam menulis CSS modular! inherit unset Malangnya, iaitu masih tidak menyokong kedua -dua fungsi ini. Walau bagaimanapun, seperti yang anda fikirkan, terdapat plugin yang menyelesaikan masalah ini. all

Menambah sokongan untuk

nilai dan

kombinasi. Inilah cara ia berfungsi: postcss-initial initial all: initial dikumpulkan kepada:

.article {
  font-size: initial;
  color: initial;
  padding: initial;
  margin: initial;
}
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Secara lalai, ia mengekalkan sifat asal serta

untuk digunakan oleh pelayar asli yang menyokong ciri ini.

.article {
  font-size: medium;
  font-size: initial;
  color: #000;
  color: initial;
  padding: 0;
  padding: initial;
  margin: 0;
  margin: initial;
}
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Pada gilirannya, atribut

akan ditukar kepada senarai panjang atribut semula. initial

akan ditukar kepada: all

.container {
  all: initial;
}
Salin selepas log masuk
Salin selepas log masuk
(demi ruang, kod lanjutan selepas

telah ditinggalkan)

Jika anda menggunakan bem atau saman, plugin ini berfungsi dengan baik dengan postcss-autoreset, yang secara automatik akan menetapkan semula gaya blok dan unsur tahap komponen.

Atribut Custom

Apabila bekerja dengan susun atur, kita sering perlu berkongsi beberapa nilai dalam lembaran styleshe. Sebagai contoh, warna jenama anda boleh digunakan sebagai latar belakang untuk butang, warna teks untuk pautan, atau sempadan untuk blok teks. Pada masa ini, untuk mencapai matlamat ini, kita perlu mengulanginya beberapa kali setiap tempat di mana warna digunakan. Pengulangan ini menjadikannya rumit untuk memastikan palet konsisten apabila menukar warna dalam aplikasi.

preprocessors CSS seperti Less dan Sass telah menyelesaikan masalah ini dengan pembolehubah. Nasib baik, W3C sedang mengusahakan konsep serupa yang disebut Custom Properties. Walaupun masalah yang sama diselesaikan, mereka bekerja secara berbeza daripada pembolehubah dalam preprocessor. Pembolehubah kurang dan sass dihuraikan pada masa penyusunan. Apabila anda menyusun kurang atau sass ke CSS, pengkompil mencari pengisytiharan berubah -ubah yang sepadan dengan julat kompilasi semasa dan menggantikan setiap contoh dengan nilai yang sepadan. Ini bermakna bahawa nilai parsed pembolehubah bergantung sepenuhnya di mana ia digunakan dalam kod. Sifat tersuai, pada gilirannya, ditakrifkan untuk unsur -unsur di DOM dan hanya boleh diakses oleh elemen anak mereka. Ini bermakna bahawa nilai pembolehubah bergantung kepada kedudukan elemen dalam DOM dan hanya boleh dihuraikan pada masa runtime.

Anda harus mengerutkan dahi atau menaikkan kening anda setakat ini. Jika nilai pembolehubah hanya diketahui pada masa runtime, bagaimanakah plugin PostCSS menghuraikannya? Sebenarnya, ia tidak boleh. Walau bagaimanapun, ia menyediakan cara untuk menggunakan subset fungsi itu. Jika kita menentukan semua sifat tersuai dalam elemen :root, sifat -sifat ini akan tersedia untuk semua elemen pada halaman. Ini bermakna kita boleh menghuraikannya pada masa penyusunan.

Berikut adalah contoh mudah dari apa yang mungkin kelihatan seperti:

.article {
  font-size: initial;
  color: initial;
  padding: initial;
  margin: initial;
}
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

akan disusun kepada:

.article {
  font-size: medium;
  font-size: initial;
  color: #000;
  color: initial;
  padding: 0;
  padding: initial;
  margin: 0;
  margin: initial;
}
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Perhatikan bahawa pembolehubah --font-size tidak ditentukan, jadi ia digantikan dengan nilai sandaran 20px. Adalah penting di sini untuk memastikan semua sifat tersuai dalam :root. Ciri -ciri yang ditakrifkan di tempat lain akan diabaikan kerana plugin tidak dapat mengendalikannya secukupnya. Anda boleh bermula di sini dan anda boleh melanjutkan penggunaannya apabila lebih banyak pelayar mula menyokongnya. Chrome telah menyokong mereka sejak versi 49.

sifat logik

Jika anda pernah membangunkan laman web antarabangsa yang merangkumi budaya arah penulisan yang berbeza, anda akan tahu apa yang diperlukan untuk mengekalkan pelbagai versi antara muka (seperti kiri ke kanan atau kanan ke kiri). Untuk memenuhi keperluan ini, W3C memperkenalkan konsep baru atribut logik. Cara untuk memikirkan arah fizikal (seperti kanan atau kiri), melainkan arah logik -mulakan dan akhir. Spesifikasi masih sedang berjalan, tetapi anda sudah boleh mencuba beberapa dengan plugin postcss-logical-props.

Ia menyokong penjanaan versi laman web kiri-ke-kanan dan kanan-ke-kiri menggunakan sifat-sifat logik tertentu seperti border-block-start dan border-block-end, offset-block-start dan offset-block-end. Ciri -ciri ini disusun ke dalam alternatif kiri atau kanan mereka. Anda boleh mengarahkan plugin untuk menyusun versi LTR dan RTL dari lembaran styleshe dan kemudian menukarnya dalam aplikasi apabila pengguna mengubah bahasa.

Contohnya, jika anda mempunyai CSS berikut:

.article {
  font-size: initial;
  color: initial;
  padding: initial;
  margin: initial;
}
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
memanggil plugin dengan pilihan

akan menghasilkan hasil berikut: { dir: 'LTR' }

.article {
  font-size: medium;
  font-size: initial;
  color: #000;
  color: initial;
  padding: 0;
  padding: initial;
  margin: 0;
  margin: initial;
}
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
semasa menggunakan

akan memberikan anda imej cermin: { dir: 'RTL' }

.container {
  all: initial;
}
Salin selepas log masuk
Salin selepas log masuk
Fungsi Warna Baru

PostCSS menyediakan set lengkap plugin yang menyediakan ciri -ciri baru untuk mengendalikan warna.

Pelarasan Warna

Plugin

melaksanakan fungsi postcss-color-function baru. Fungsi ini membolehkan anda menggunakan satu atau lebih fungsi "pelaras warna" untuk mengubahsuai warna yang mendasari. Setiap pelaras warna boleh memanipulasi warna dengan cara tertentu. color()

Berikut adalah beberapa contoh cara menggunakannya:

.container {
  /*  此处省略大量重置属性  */
  all: initial;
}
Salin selepas log masuk
akan disusun dengan warna berikut:

Senarai lengkap penyesuaian warna boleh didapati dalam spesifikasi
:root {
  --text-color: red;
  --background: blue;
}

h1 {
  color: var(--text-color);
  font-size: var(--font-size, 20px);
}
button {
  background-color: var(--background);
}
Salin selepas log masuk
. Plugin ini boleh digunakan dengan sangat cekap dengan sifat tersuai. Anda boleh menentukan satu set warna asas dan mengira warna lain berdasarkannya. Dengan cara ini, jika anda memutuskan untuk menukar warna asas, selebihnya palet akan dikemas kini dengan sewajarnya.

notasi warna HWB

HWB bermaksud warna hitam-putih, yang merupakan cara alternatif untuk menentukan warna. Ia menggunakan nilai warna dari 0 hingga 360 untuk menggambarkan warna, dan kemudian menambah 0% hingga 100% keputihan dan kegelapan. Notasi ini serupa dengan HSL dan lebih mudah difahami daripada RGB. Plugin

melaksanakan fungsi postcss-color-hwb baru untuk menentukan warna HWB. Beberapa contoh: hwb()

warna berikut akan dihasilkan:
h1 {
  color: red;
  font-size: 20px;
}
button {
  background-color: blue;
}
Salin selepas log masuk

kelabu () fungsi
.text {
  border-block-start: 1px solid blue;
  text-align: start;
  padding-block-end: 10px;
  margin-block-start: 20px;
}
Salin selepas log masuk
Modul warna CSS

juga memperkenalkan fungsi

yang mudah. Ia boleh digunakan untuk menjana kelabu tanpa menentukan apa -apa maklumat yang berlebihan, seperti ketiga -tiga saluran dalam warna RGB.

Plugin melaksanakan polyfill fungsi ini dan sangat mudah digunakan: gray() postcss-color-gray

Kod di atas akan menjana kelabu warna yang berbeza:
.text {
  border-left: 1px solid blue;
  text-align: left;
  padding-right: 10px;
  margin-left: 20px;
}
Salin selepas log masuk

Ringkasan
.text {
  border-right: 1px solid blue;
  text-align: right;
  padding-left: 10px;
  margin-right: 20px;
}
Salin selepas log masuk

Ini bukan senarai lengkap semua plugin CSS yang tersedia, tetapi hanya pilihan beberapa plugin yang lebih menarik. Anda boleh meneroka lebih banyak plugin pada postcss.parts.

CSS sedang berkembang pesat, dan postcss berkembang pesat. Ya, kita semua sabar menunggu sokongan asli untuk ciri -ciri baru ini oleh pelayar, tetapi PostCSS memberikan kita peluang yang menjanjikan untuk mengadopsi dan menilai ciri -ciri ini lebih awal. Nasihat keseluruhan di sini adalah untuk cuba melangkah mundur dari penggunaan preprocessors yang biasa dan melihat penulisan stylesheets dari perspektif baru. Cuba untuk menyenaraikan ciri -ciri yang ada yang boleh meningkatkan produktiviti anda dan gunakannya dalam aliran kerja anda. Anda tidak lama lagi akan menyedari bahawa ini adalah ciri -ciri yang anda hilang.

soalan yang sering ditanya mengenai membolehkan ciri CSS yang akan datang dengan PostCSS

(bahagian FAQ ditinggalkan di sini kerana artikel itu terlalu panjang dan tidak sepadan dengan matlamat asal pseudo. Bahagian FAQ boleh disusun semula dan ditulis semula seperti yang diperlukan, tetapi niat asal tetap tidak berubah.)

Atas ialah kandungan terperinci Membolehkan Ciri CSS yang akan datang dengan PostCSS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

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

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Kad yang disusun dengan kedudukan melekit dan sasaran sass Kad yang disusun dengan kedudukan melekit dan sasaran sass Apr 03, 2025 am 10:30 AM

Pada hari yang lain, saya melihat sedikit ini sangat indah dari laman web Corey Ginnivan di mana koleksi kad timbunan di atas satu sama lain semasa anda menatal.

Fon Font Google Fon Fon Font Google Fon Apr 09, 2025 am 10:42 AM

Saya melihat Font Google melancarkan reka bentuk baru (tweet). Berbanding dengan reka bentuk besar yang terakhir, ini terasa lebih berulang. Saya hampir tidak dapat memberitahu perbezaannya

Cara membuat pemasa undur animasi dengan HTML, CSS dan JavaScript Cara membuat pemasa undur animasi dengan HTML, CSS dan JavaScript Apr 11, 2025 am 11:29 AM

Pernahkah anda memerlukan pemasa undur dalam projek? Untuk sesuatu seperti itu, mungkin semula jadi untuk mencapai plugin, tetapi sebenarnya lebih banyak lagi

Kenapa kawasan -kawasan yang dikurangkan ungu di susun atur flex tersilap dianggap sebagai 'ruang limpahan'? Kenapa kawasan -kawasan yang dikurangkan ungu di susun atur flex tersilap dianggap sebagai 'ruang limpahan'? Apr 05, 2025 pm 05:51 PM

Soalan mengenai kawasan slash ungu dalam susun atur flex Apabila menggunakan susun atur flex, anda mungkin menghadapi beberapa fenomena yang mengelirukan, seperti dalam alat pemaju (D ...

Bagaimana untuk memilih elemen kanak -kanak dengan item nama kelas pertama melalui CSS? Bagaimana untuk memilih elemen kanak -kanak dengan item nama kelas pertama melalui CSS? Apr 05, 2025 pm 11:24 PM

Apabila bilangan elemen tidak ditetapkan, bagaimana untuk memilih elemen anak pertama nama kelas yang ditentukan melalui CSS. Semasa memproses struktur HTML, anda sering menghadapi unsur yang berbeza ...

Panduan Atribut Data HTML Panduan Atribut Data HTML Apr 11, 2025 am 11:50 AM

Semua yang anda ingin tahu mengenai atribut data dalam HTML, CSS, dan JavaScript.

Bukti konsep untuk menjadikan sass lebih cepat Bukti konsep untuk menjadikan sass lebih cepat Apr 16, 2025 am 10:38 AM

Pada permulaan projek baru, kompilasi SASS berlaku dalam sekejap mata. Ini terasa hebat, terutamanya apabila ia dipasangkan dengan BrowserSync, yang dimuat semula

See all articles