Rumah hujung hadapan web tutorial css Dapatkan Saiz Skrin dalam CSS Tulen

Dapatkan Saiz Skrin dalam CSS Tulen

Sep 03, 2024 am 10:39 AM

Kita semua tahu bahawa CSS dahulunya merupakan bahagian yang paling mencabar dalam pembangunan web. Walau bagaimanapun, ia menjadi lebih sukar pada masa kini.

Anda tidak akan percaya, tetapi kini CSS boleh mentakrifkan sifat, membuat pengiraan, dan juga mendapatkan saiz skrin secara langsung! Artikel ini akan menunjukkan kepada anda cara melakukannya.

Takrifkan Harta

Peraturan @property ialah ciri baharu dalam CSS yang membolehkan pembangun membuat sifat tersuai dan menetapkan jenis, warisan dan nilai awal mereka. Menggunakan ciri ini, kita boleh membaca nilai tertentu dan menyerahkannya kepada sifat tersuai.

Dalam contoh di bawah, kami mentakrifkan dua sifat tersuai, --w_raw dan --h_raw, masing-masing mewakili lebar dan ketinggian skrin:

@property --w_raw {
  syntax: '<length>';
  inherits: true;
  initial-value: 100vw;
}

@property --h_raw {
  syntax: '<length>';
  inherits: true;
  initial-value: 100vh;
}
Salin selepas log masuk
  • sintaks: '' menyatakan bahawa jenis harta itu ialah panjang.
  • mewarisi: benar menunjukkan bahawa harta itu boleh diwarisi.
  • nilai awal menetapkan nilai awal harta itu kepada 100vw dan 100vh, yang merupakan lebar dan tinggi port pandangan.

Mengeluarkan Unit

Kini, kami telah memperoleh nilai lebar dan ketinggian skrin, tetapi nilai tersebut masih termasuk unit. Bagaimanakah kita boleh mengalih keluar unit untuk mendapatkan nilai angka tulen? Ini soal matematik, jadi kita perlu menggunakan alatan matematik dalam CSS: atan2(y, x) dan tan().

  • Fungsi atan2(y, x) mengembalikan sudut (dalam radian) dari paksi-x ke titik (x, y).
  • Fungsi tan() mengira tangen bagi sudut tertentu.

Menggabungkan ini, kita boleh mendapatkan nilai angka tulen. Di sini, kita lulus var(--w_raw) dan 1px sebagai parameter untuk mengira sudut lebar dan kemudian menukarnya kepada nombor. Dengan cara ini, kami menukar lebar dan tinggi kepada nilai tanpa unit dan menyimpannya dalam pembolehubah :root.

:root {
  --w: tan(atan2(var(--w_raw), 1px));
  --h: tan(atan2(var(--h_raw), 1px));
}
Salin selepas log masuk

Memaparkan Nombor

Sekarang nilai angka disimpan dalam CSS, bagaimanakah kita memaparkannya? Kaunterlah yang penting!

body::before {
  content: counter(w) 'x' counter(h);
  counter-reset: h var(--h) w var(--w);
}
Salin selepas log masuk

Kami mencipta elemen pseudo ::before pada badan untuk memaparkan kandungan CSS.

  • set semula balas memulakan pembilang h dan w dan menetapkan nilainya kepada var(--h) dan var(--w).
  • kandungan: kaunter(w) "x" kaunter(h); memaparkan pembilang lebar dan ketinggian, dalam format "lebar x tinggi".

Selesai!

Kini anda mempunyai penunjuk saiz skrin yang dilaksanakan semata-mata dalam CSS.

Pelayar akan mengemas kini --w dan --h dalam masa nyata dan memaparkannya pada halaman. Keseluruhan proses adalah bebas JavaScript sepenuhnya.

Anda boleh klik di sini untuk mencuba demo dalam talian.

Get Screen Size in Pure CSS

Atas ialah kandungan terperinci Dapatkan Saiz Skrin dalam CSS Tulen. 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)

Topik panas

Tutorial Java
1657
14
Tutorial PHP
1257
29
Tutorial C#
1229
24
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

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.

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 ...

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 Kami Membuat Tapak Statik yang Menjana Corak Tartan Di SVG Bagaimana Kami Membuat Tapak Statik yang Menjana Corak Tartan Di SVG Apr 09, 2025 am 11:29 AM

Tartan adalah kain berpola yang biasanya dikaitkan dengan Scotland, terutamanya kilt bergaya mereka. Di Tartanify.com, kami mengumpulkan lebih dari 5,000 Tartan

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