cari
Rumahhujung hadapan webtutorial cssOperasi logik dengan pembolehubah CSS

Operasi logik dengan pembolehubah CSS

Artikel ini menunjukkan cara melakukan operasi logik pada pembolehubah suis CSS (pembolehubah dengan nilai 0 atau 1) menggunakan aritmetik dalam fungsi calc() . Kami tidak mempunyai fungsi logik yang berdedikasi dalam CSS, tetapi pengiraan ini memberikan emulasi yang berkesan.

Operasi logik dalam CSS menggunakan calc()

Bukan operasi

Menafikan pembolehubah suis ( --j ) adalah mudah: tolaknya dari 1.

 --notj: calc (1-var (-j));

Jika --j adalah 0, --notj menjadi 1; jika --j adalah 1, --notj adalah 0.

Dan operasi

Dan operasi mengembalikan benar hanya jika kedua -dua operan adalah benar. Untuk pembolehubah suis ( --k dan --i ), pendaraban mencapai ini:

 -dan: calc (var (-k) * var (-i));

Ini menghasilkan 1 hanya apabila kedua --k -dan --i adalah 1; Jika tidak, itu 0.

Operasi nand (tidak dan)

Nand adalah penolakan dan:

 --nand: calc (1-var (-k) * var (-i));

Atau operasi

Operasi atau adalah benar jika sekurang -kurangnya satu operan adalah benar. Menggunakan undang -undang De Morgan ( not (A or B) = (not A) and (not B) ), kita dapat:

 --or: calc (1-(1-var (-k)) * (1-var (-i)));

Dan tidak beroperasi (tidak atau)

Juga penolakan atau:

 --nor: calc ((1-var (-k)) * (1-var (-i)));

Operasi XOR (eksklusif atau)

XOR adalah benar jika betul -betul satu operan adalah benar. Mengurangkan pembolehubah dan mengikat hasilnya memberikan nilai mutlak, memberikan hasil yang dikehendaki 0 ​​atau 1:

 --xor: calc ((var (-k)-var (-i)) * (var (-k)-var (-i)));

Aplikasi praktikal

Menyembunyikan panel kurang upaya di skrin kecil

Contoh ini menunjukkan panel kawalan lanjutan yang dilumpuhkan yang hanya dapat dilihat pada skrin yang lebih besar.

Html (ilustrasi):

<div class="advanced">
  
</div>
<input type="checkbox" id="toggle">

CSS:

 badan {
  --K: var (-lebar, 0); / * Tukar untuk saiz skrin */
  Paparan: Flex;
  flex-arah: var (-lebar, lajur);
  @media (min-lebar: 768px) {--wide: 1; } / * Laraskan titik putus seperti yang diperlukan * /
}

.pelakur {
  --i: var (-didayakan, 0); / * Tukar untuk keadaan diaktifkan */
  --noti: calc (1-var (-i));
  penapis: kontras (calc (1-var (-noti) * 0.9)) kelegapan (calc (1-var (-noti) * 0.7));
  Pointer-events: var (-enabled, none);
  margin: calc (var (-atau) * 20px) 0; / * Contoh margin */
  ketinggian: calc (var (-atau) * 200px); / * Ketinggian contoh */
  [id = 'togol']: diperiksa ~ & {--Enabled: 1; }
  --or: calc (1-(1-var (-k)) * (1-var (-i))); / * Atau operasi */
}

Ini menggunakan OR Operasi ( --or ) untuk menunjukkan panel jika skrin luas ( --k adalah 1) atau panel diaktifkan ( --i adalah 1).

Posisi wajah bentuk 3D (contoh kompleks)

Contoh kedua, yang melibatkan bentuk 3D yang kompleks, menunjukkan penggunaan operasi logik yang lebih maju untuk kedudukan muka yang tepat. Oleh kerana kerumitannya, contoh ini ditinggalkan untuk keringkasan. Teks asal memberikan penjelasan terperinci dan demo interaktif yang menggambarkan kes penggunaan ini. Konsep teras tetap sama: menggunakan calc() dan operasi logik (dan, atau, tidak, XOR, NAND, NOR) untuk menggunakan transformasi secara kondusif berdasarkan keadaan berubah -ubah suis.

Atas ialah kandungan terperinci Operasi logik dengan pembolehubah CSS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
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
Indieweb dan WebmentionsIndieweb dan WebmentionsApr 19, 2025 am 11:16 AM

Indieweb adalah satu perkara! Mereka ' VE mendapat persidangan yang datang dan segala -galanya. New Yorker juga menulis tentangnya:

Model pertumbuhan (pemaju ' s)Model pertumbuhan (pemaju ' s)Apr 19, 2025 am 11:08 AM

Saya sangat suka jawatan "Model Pertumbuhan Pereka" oleh Dennis Hambeukers. Dennis hanya mencipta model ini, tetapi ia ' s berdasarkan beberapa idea yang ada dan semuanya

Haunted: cangkuk untuk komponen webHaunted: cangkuk untuk komponen webApr 19, 2025 am 11:06 AM

Saya hanya berbual dengan Dave dan dia memberitahu saya tentang berhantu. Ia cangkuk, tetapi untuk komponen web asli! Cukup sejuk. Saya rasa kewujudan barangan seperti ini

Berita Platform Mingguan: Masa Acara, Google Earth untuk Web, Undead Sesi CookiesBerita Platform Mingguan: Masa Acara, Google Earth untuk Web, Undead Sesi CookiesApr 19, 2025 am 10:57 AM

Dalam berita minggu ini, Wikipedia membantu mengenal pasti tiga pengendali klik perlahan, Google Earth datang ke web, sifat SVG dalam CSS mendapatkan lebih banyak sokongan, dan apa yang perlu dilakukan sekiranya berlaku kue zombie.

Pemotongan pelbagai baris dengan CSS tulenPemotongan pelbagai baris dengan CSS tulenApr 19, 2025 am 10:50 AM

Caranya dalam artikel ini masih cukup kemas dan pandai, tetapi ada cara yang kini standard untuk melakukan ini yang mungkin pertaruhan terbaik anda.

Perpustakaan animasi CSSPerpustakaan animasi CSSApr 19, 2025 am 10:46 AM

Terdapat banyak perpustakaan yang ingin membantu anda menghidupkan perkara di web. Ini tidak benar -benar perpustakaan yang membantu anda dengan sintaks atau

Input Warna: Menyelam dalam ke dalam perbezaan silang penyemak imbasInput Warna: Menyelam dalam ke dalam perbezaan silang penyemak imbasApr 19, 2025 am 10:40 AM

Dalam artikel ini, kita akan melihat struktur di dalam elemen, ketidakkonsistenan pelayar, mengapa mereka melihat cara tertentu dalam penyemak imbas tertentu, dan bagaimana

Menyekat elemen (pseudo) ke kotak sempadan ibu bapa 'Menyekat elemen (pseudo) ke kotak sempadan ibu bapa 'Apr 19, 2025 am 10:39 AM

Pernahkah anda mahu memastikan bahawa tiada elemen (pseudo) yang dipaparkan di luar kotak sempadan ibu bapa ' s? Sekiranya anda mempunyai masalah untuk membayangkan apa

See all articles

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

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.