Apa maksud vh pada css

CSS memiliki beberapa unit yang berbeda untuk mengekspresikan panjang a.

Banyak properti CSS mengambil "length" nilai-nilai, seperti lebar, margin, padding, font-size, border-width, dll

Panjang adalah nomor yang diikuti oleh satuan panjang, seperti 10px, 2em, dll

Sebuah spasi tidak dapat muncul antara jumlah dan unit. Namun, jika nilai adalah 0, unit dapat dihilangkan.

Untuk beberapa properti CSS, panjang negatif diperbolehkan.

Ada dua jenis unit panjang: relatif dan absolut.

Dukungan Browser

Angka-angka dalam tabel menentukan versi browser pertama yang sepenuhnya mendukung satuan panjang.

panjang Satuan
em, ex, %, px, cm, mm, in, pt, pc 1.0 3.0 1.0 1.0 3.5
ch 27,0 9.0 1.0 7.0 20.0
rem 4.0 9.0 3.6 4.1 11.6
vh, vw 20.0 9.0 19.0 6.0 20.0
vmin 20.0 9.0 * 19.0 6.0 20.0
vmax 26,0 Tidak didukung 19.0 Tidak didukung 20.0

Note: Internet Explorer 9 mendukung Vmin dengan nama non-standar: vm.

Panjang relatif

unit panjang relatif menentukan panjang relatif terhadap properti panjang lain. unit panjang relatif skala yang lebih baik antara media rendering yang berbeda.

Satuan Deskripsi
em Sehubungan dengan font-size dari elemen (2em means 2 times the size of the current font) Cobalah
ex Sehubungan dengan x-height dari font saat ini (rarely used) Cobalah
ch Sehubungan dengan lebar dari "0" (zero)
rem Sehubungan dengan font-size dari elemen root
vw Sehubungan dengan 1% dari lebar viewport * Cobalah
vh Sehubungan dengan 1% dari ketinggian viewport * Cobalah
vmin Sehubungan dengan 1% dari viewport ini * dimensi lebih kecil Cobalah
vmax Sehubungan dengan 1% dari viewport ini * dimensi lebih besar Cobalah
%

Tip: em The dan rem unit praktis dalam menciptakan tata letak sempurna scalable!
* Viewport = ukuran jendela browser. Jika viewport adalah 50cm lebar, 1vw = 0.5cm.

Absolute Panjang

Unit panjang absolut tetap dan panjang yang dinyatakan dalam semua ini akan muncul sebagai persis ukuran.

unit panjang mutlak tidak dianjurkan untuk digunakan pada layar, karena ukuran layar bervariasi begitu banyak. Namun, mereka dapat digunakan jika media keluaran diketahui, seperti untuk tata letak cetak.

* Pixels (px) yang relatif terhadap perangkat tampilan. Untuk perangkat low-dpi, 1px adalah salah satu perangkat pixel (dot) layar. Untuk printer dan layar resolusi tinggi 1px menyiratkan beberapa piksel perangkat.


Terima kasih atas jawaban dan contoh kode Anda, @IanC. Itu sangat membantu saya. Klarifikasi: Saya yakin yang Anda maksud adalah "scrollbar" saat Anda menulis "sidebar".

Berikut adalah beberapa diskusi terkait tentang unit area pandang yang menghitung bilah gulir yang menurut saya berguna:

Spesifikasi W3C untuk unit vw, vh, vmin, vmax ("panjang persentase viewport") mengatakan "semua scrollbar diasumsikan tidak ada".

Rupanya Firefox mengurangi lebar scrollbar dari 100vw, seperti komentar @ Nolonar di Perbedaan antara Lebar: 100% dan lebar: 100vw? mengamati, mengutip "Can I Use".

Can I Use , mungkin karena ketegangan dengan spesifikasi (?), Mengatakan semua browser selain Firefox saat ini "salah" menganggap 100vw sebagai lebar halaman secara keseluruhan termasuk scroll bar vertikal.

Saat mendesain saya memakai px karena tidak ada satuan lain di Sketch/Figma/dsb.

Saat bermain CSS saya mulai memakai rem karena tidak perlu pusing, dulunya masih memakai em.

Secara umum alias kalau tidak diganti-ganti, 16px itu sebanding dengan 1em atau 1rem.

pixel

Ukuran px selalu fix.

em

Ukuran em dipengaruhi oleh elemen yang membungkusnya. Misal:

<style> div {font-size: 24px} div > strong {font-size: .5em} div > small {font-size: 2em} div > strong, div > small {display: block} </style> <div> <strong>teks tebal</strong> <small>teks kecil</small>

</div>

Elemen <strong> memiliki ukuran .5em atau 0.5∗24px=12px. Elemen <small> memiliki ukuran 2em atau 2∗24px=48px.

Kalau saya mengganti ukuran font di <div>, misal dijadikan menjadi 10px, perbandingan keduanya adalah ini:

rem (root em)

Ukuran rem (root em) dipengaruhi oleh root alias <html>. Misal saya mengatur ukuran huruf dokumen html ini sebesar 24px, lalu elemen <div> memiliki ukuran 2px, dan elemen <p> yang ada di dalam <div> berukuran 2rem, bagaimana tampilannya?

<style>html {font-size: 24px}div {font-size: 2px}div > p {font-size: 2.5rem}</style><div><p>teks</p>

</div>

Karena saya memakai rem, jadi ukuran font yang ada di <div> tidak mempengaruhi apa-apa. teks di dalam <p> itu sendiri berukuran 2.5rem ∗ (root size) = 2.5 ∗ 24px = 60px.

Saya mulai memilih rem karena cukup ada 1 ukuran saja yang diatur, yaitu yang ada di <html>. Oh iya, rem tidak hanya saya pakai untuk font-size saja, tapi juga hal lain macam padding, margin, dsb.

Penggunaan rem ini juga memudahkan untuk membuatnya responsif, misal:

@media (max-width: 575px) {html {font-size: 12px;}}@media (min-width: 576px) and (max-width: 767px) {html {font-size: 14px;}}@media (min-width: 768px) and (max-width: 991px) {html {font-size: 16px;}}@media (min-width: 992px) {html {font-size: 18px;}}.row {margin-left: 1rem; margin-right: 1rem}.col {padding-left: 1rem; padding-right: 1rem}

img.logo {width: 2rem; height: auto}

… dan ukuran-ukuran rem tinggal mengikuti ukuran di atas.

Untuk kasus tertentu, saya juga memakai vh dan vw yang ukurannya relatif dengan ukuran viewport, misalnya saat berurusan dengan hero.

Catatan: Ini adalah salinan jawaban saya di Quora. Saya akan menulis ulang jawaban yang saya suka di Quora ke dalam blog saya.

53 people enjoyed this post

Udah lama gak ngoprek CSS dan gak nge-blog juga. Padahal baru kemarin nulis di blog. Sekarang bahas apa? Bahas CSS unit aja. Udah tau satuan px (pixel) kan? Sekarang mari bahas satuan vw dan vh atau satuan viewport dari CSS3. Sebenernya udah ada sejak lama, tapi baru dipake kemaren -_-"

Konsep dari vw dan vh itu adalah: mewakili persentase dari tampilan lebar dan tinggi browser. Jadi, kalau kita memasukan value 80vw, artinya lebar dari elemen tersebut sama dengan 80% dari lebar window browser, yang vh juga sama, bedanya dia representasi dari tinggi window browser.

1vw = 1/100 (1%) dari lebar window browser

10vw = 10/100 (10%) dari lebar window browser

50vh = 50/100 (50%) dari tinggi window browser

Apa bedanya dengan satuan persen?

Beda dari satuan persen (%) adalah, satuan persen mengacu pada inheritance dari parent, atau diukur berdasarkan lebar / tinggi dari parent. Misal, tag header memiliki lebar 800px, maka tag apapun yang ada di dalam header akan memiliki persentase dari 800px.

Sekarang, apa bedanya dengan em?

em biasa digunakan untuk font, nilai yang digunakan adalah "bagaimana browser atau device menampilkan ukuran font secara native, pendeknya ukuran font ditentukan oleh browser atau device itu sendiri."

Kalau masih kurang mudeng, silakan simak demo dibawah dan coba resize lebar dari browser

Atau buka link ini //codepen.io/sendz/full/cbDpf untuk lihat hasil dengan full-size. [codepen_embed height="259" theme_id="0" slug_hash="cbDpf" default_tab="css" user="sendz"] .container { width: 800px; background-color: #333; padding: 5px; margin: 10px 0px;

}

Video yang berhubungan

Postingan terbaru

LIHAT SEMUA