Artikel ini dikutip dari buku terbaru Tiffany "CSS Master, Edisi Kedua". Di jalan untuk menjadi tuan CSS, adalah penting untuk menguasai kemahiran penyelesaian masalah dan pengoptimuman CSS. Bagaimana cara mendiagnosis dan menyelesaikan masalah rendering? Bagaimana untuk memastikan CSS tidak menjejaskan prestasi pengguna akhir? Bagaimana untuk memastikan kualiti kod?
Alat yang sesuai dapat memastikan operasi front-end yang efisien. Artikel ini akan memberi tumpuan kepada teknologi mampatan CSS.
Alat pemaju membantu mencari dan memperbaiki masalah rendering, tetapi betapa efisiennya? Adakah saiz fail kami cukup kecil? Pada masa ini, kita perlu menggunakan alat mampatan.
Dalam CSS, pemampatan hanya untuk "menghapuskan aksara yang tidak perlu". Sebagai contoh, pertimbangkan blok kod berikut:
<code>h1 { font: 16px / 1.5 'Helvetica Neue', arial, sans-serif; width: 80%; margin: 10px auto 0px; }</code>
Kod ini mengandungi rehat garis dan ruang, dengan jumlah 98 bait. Mari lihat contoh termampat:
<code>h1{font:16px/1.5 'Helvetica Neue',arial,sans-serif;width:80%;margin:10px auto 0}</code>
Sekarang CSS kami hanya 80 bait - pengurangan 18%. Sudah tentu, bait yang lebih sedikit, semakin cepat kelajuan muat turun dan semakin rendah kos penghantaran data, yang baik untuk anda dan pengguna anda.
Artikel ini akan memperkenalkan CSS Optimizer (CSSO), alat pemampatan berasaskan Node.js. Untuk memasang CSSO, anda perlu memasang Node.js dan NPM terlebih dahulu. NPM dipasang sebagai sebahagian daripada proses pemasangan Node.js, jadi anda hanya perlu memasang satu pakej.
Menggunakan CSSO memerlukan anda untuk mengetahui antara muka baris arahan. Pengguna Linux dan MACOS boleh menggunakan aplikasi terminal (MACOS adalah aplikasi> aplikasi terminal). Jika anda menggunakan Windows, gunakan Prompt Command. Pergi ke menu Permulaan atau Windows dan taipkan CMD dalam kotak carian.
Selepas memasang Node.js dan NPM, anda boleh memasang CSSO. Pada baris arahan, ketik:
<code>npm install -g csso</code>
-g
Bendera untuk memasang CSSO secara global supaya kita boleh menggunakannya dalam baris arahan. Selepas pemasangan selesai, NPM akan mencetak mesej ke tetingkap terminal anda.
Sekarang, kami sudah bersedia untuk memampatkan CSS.
Untuk memampatkan fail CSS, jalankan arahan CSSO dan lulus nama fail sebagai parameter:
<code>csso style.css</code>
Ini akan melakukan mampatan asas. CSSO membuang ruang yang tidak perlu, titik koma tambahan, dan komen dalam fail input CSS.
Selepas selesai, CSSO akan mencetak CSS yang dioptimumkan ke output standard, iaitu, terminal semasa atau tetingkap prompt arahan. Walau bagaimanapun, dalam kebanyakan kes, kami mahu menyimpan output ke fail. Untuk melakukan ini, sila lulus parameter kedua ke CSSO - nama fail termampat. Sebagai contoh, jika kita mahu menyimpan versi mampat gaya.css sebagai style.min.css, kita akan menggunakan arahan berikut:
<code>csso style.css style.min.css</code>
Secara lalai, CSSO menyusun semula bahagian CSS. Sebagai contoh, ia menggabungkan blok pengisytiharan dengan pemilih pendua dan membuang beberapa atribut yang ditimpa. Pertimbangkan CSS berikut:
<code>h1 { font: 16px / 1.5 'Helvetica Neue', arial, sans-serif; width: 80%; margin: 10px auto 0px; }</code>
Dalam segmen kod ini, margin-left
mengatasi deklarasi margin
sebelumnya. Kami juga menggunakan semula h1
sebagai pemilih untuk blok pengisytiharan berterusan. Selepas pengoptimuman dan pemampatan, kami mendapat:
<code>h1{font:16px/1.5 'Helvetica Neue',arial,sans-serif;width:80%;margin:10px auto 0}</code>
CSSO menghilangkan ruang yang tidak perlu, garis baru dan titik koma dan memendekkan #ff6600
ke #f60
. CSSO juga menggabungkan sifat -sifat margin
dan margin-left
ke dalam perisytiharan (margin: 20px 30px 20px 0
kami ke dalam satu. h1
atau --restructure-off
. Sebagai contoh, berjalan -off
akan mendapat: csso style.css style.min.css -off
<code>npm install -g csso</code>
Preprocessors dan postprocessors seperti SASS, Less, dan PostCSS menyediakan keupayaan mampatan dalam alat mereka. Walau bagaimanapun, dengan menggunakan CSSO dapat mengurangkan saiz fail.
Untuk mengetahui lebih lanjut mengenai debug dan pengoptimuman CSS, sila lihat buku Tiffany "CSS Master, Edisi Kedua".
Artikel yang berkaitan:
Bagaimana CSSO berfungsi?
Bagaimana menggunakan CSSO?
Apakah faedah menggunakan CSSO berbanding dengan pemampat CSS yang lain?
Walaupun CSSO direka untuk mengoptimumkan CSS anda tanpa menjejaskan fungsinya, dalam beberapa kes ia boleh memecahkan CSS anda. Ini biasanya disebabkan oleh kesilapan dalam CSSO atau penggunaan yang tidak wajar. Selepas memohon CSSO, pastikan anda menguji laman web anda dengan teliti untuk memastikan semuanya berfungsi dengan baik.
Jika anda menghadapi masalah dengan CSSO, anda boleh menggunakan pilihan "--debug" pada runtime untuk maklumat lebih terperinci tentang bagaimana ia berfungsi. Ini dapat membantu anda mengenal pasti kawasan yang bermasalah di CSS anda. Juga, anda boleh memulihkan ke fail CSS asal pada bila -bila masa jika diperlukan.
Ya, anda boleh menggunakan CSSO dengan preprocessors CSS yang lain. Walau bagaimanapun, anda perlu menyusun kod SASS atau kurang ke CSS biasa terlebih dahulu, dan kemudian menjalankannya melalui CSSO.
CSSO mengoptimumkan kod CSS anda tanpa mengubah fungsinya, jadi CSS yang dihasilkan harus bersesuaian dengan semua pelayar yang menyokong CSS asal. Walau bagaimanapun, selepas memohon CSSO, lebih baik untuk menguji laman web anda dalam penyemak imbas yang berbeza untuk memastikan keserasian.
Ya, CSSO menyediakan beberapa pilihan yang membolehkan anda mengawal tahap pengoptimuman. Sebagai contoh, anda boleh melumpuhkan pengoptimuman struktur atau memelihara komen jika diperlukan.
Ya, CSSO adalah alat sumber terbuka, yang bermaksud ia bebas untuk digunakan. Anda boleh mencari kod sumbernya di GitHub dan, jika anda lebih suka, mengambil bahagian dalam pembangunannya.
Respons ini mengekalkan format dan penempatan imej, menulis semula teks untuk keaslian sambil memelihara makna, dan menangani semua keperluan.
Atas ialah kandungan terperinci CSS Debugging dan Pengoptimuman: Minifikasi dengan CSSO. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!