@media all 用於全部設備 print 用於打印機和打印預覽。css
screen 用於電腦屏幕,平板電腦,智能手機等。 html
speech 應用於屏幕閱讀器等發聲設備。web
orientation:portrait : 豎屏 小程序
orientation:landscape : 橫屏 微信小程序
注:橫豎屏操做,只是針對移動端的。在PC端屏幕永遠是豎屏的瀏覽器
@media all and (min-width:500px){微信
#box{ background:blue;}佈局
}字體
@media all and (max-width:500px){網站
#box{ background:blue;}
}
<link rel="stylesheet" href="hello.css" media="all and (min-width:600px)">
rem單位是相對於字體大小的html元素,也稱爲根元素,也是我開發的時候常常用到的單位。
html {
font-size: 10px; /* 不建議設置 font-size: 62.5%; 在 IE 9-11 上有誤差,具體表現爲 1rem = 9.93px。 */
}
.sqaure {
width: 5rem; /* 50px */
height: 5rem; /* 50px */
}
相對於rem是於根元素(html)的字體大小,em則是相對於其父元素的字體大小,且最多取到小數點的後三位
<style>
html{ font-size: 20px; }
body{
font-size: 1.4rem; /* 1rem = 28px */
padding: 0.7rem; /* 0.7rem = 14px */
}
div{
padding: 1em; /* 1em = 28px */
}
span{
font-size:1rem; /* 1rem = 20px */
padding: 0.9em; /* 1em = 18px */
}
</style>
<html>
<body>
<div>
<span></span>
</div>
</body>
</html>
rpx 是微信小程序解決自適應屏幕尺寸的尺寸單位。微信小程序規定屏幕的寬度爲750rpx,也是我微信小程序開發的經常使用單位。
不管是在iPhone6上面仍是其餘機型上面都是750rpx的屏幕寬度,拿iPhone6來說,屏幕寬度爲375px,把它分爲750rpx後, 1rpx = 0.5px = 1物理像素。
vw爲視窗寬度,1vw=視窗寬度的1%
vh爲視窗高度,1vh=視窗高度的1%
這是我開發最爲喜歡的單位,無需作任何換算,還簡單。
看到這裏你可能會疑問,爲何沒有px這個原始的像素單位,我這裏說下個人見解,px設置字體大小時,是比較穩定和精確。可是這種方法存在一個問題,當用戶在瀏覽器中瀏覽咱們製做的Web頁面時,若是改變了瀏覽器的縮放,這時會使用咱們的Web頁面佈局被打破。這樣對於那些關心本身網站可用性的用戶來講,就是一個大問題了,而咱們用剛纔的媒體查詢來進行修改,會很是麻煩(代碼量增長一倍,尚未上面的單位寫的代碼兼容穩定),而如今的頁面開發都是須要你的代碼兼容兩端和各類尺寸的(手機電腦端),對於我來講,px確實已經不能做爲主要開發的單位了。