寫在同一個(gè)CSS中
CSS Code復(fù)制內(nèi)容到剪貼板
@media screen and (orientation: portrait) {
/*豎屏 css*/
}
@media screen and (orientation: landscape) {
/*橫屏 css*/
}
分開寫在2個(gè)CSS中
豎屏
CSS Code復(fù)制內(nèi)容到剪貼板
<link rel="stylesheet" media="all and (orientation:portrait)" href="portrait.css">
橫屏
CSS Code復(fù)制內(nèi)容到剪貼板
<link rel="stylesheet" media="all and (orientation:landscape)" href="landscape.css">
應(yīng)用的地方
(1)手機(jī)WEB頁(yè)面元素內(nèi)容一般都是通過(guò)百分比定義的,以便能夠在不同分辨率設(shè)備下都能正常顯示,雖然這樣,但是移動(dòng)設(shè)備的屏幕分辨率寬度和高度相差還是很大,同樣的頁(yè)面在屏幕翻轉(zhuǎn)過(guò)來(lái)時(shí)可能百分比定義的元素寬度會(huì)變得非常大,這樣就會(huì)失去頁(yè)面的美觀性,這樣,如果用orientation匹配屏幕的翻轉(zhuǎn)狀態(tài),就可以寫不同的css加以控制頁(yè)面樣式。
(2)對(duì)于有背景圖的移動(dòng)WEB頁(yè)面,可以根據(jù)orientation匹配屏幕屏幕狀態(tài),設(shè)置不同的background。
(3)稍微有技術(shù)的一點(diǎn):某些有絕對(duì)定位元素的WEB頁(yè)面,將某元素定位到頁(yè)面底部,當(dāng)屏幕是豎屏狀態(tài)時(shí),可能因?yàn)轫?yè)面總長(zhǎng)度小于屏幕高度(但是大于屏幕寬度),這時(shí)將絕對(duì)定位元素定位到底部是正確的,但是當(dāng)屏幕翻轉(zhuǎn)成為橫屏?xí)r,此時(shí)因?yàn)轫?yè)面內(nèi)容高度大于屏幕高度(就是未翻轉(zhuǎn)時(shí)屏幕寬度),絕對(duì)定位元素會(huì)覆蓋在頁(yè)面內(nèi)容之上,導(dǎo)致頁(yè)面出現(xiàn)問(wèn)題,這時(shí)可用orientation匹配屏幕狀態(tài),調(diào)整css代碼。
關(guān)于匹配屏幕橫豎屏狀態(tài)還可通過(guò)JS判斷,js中onorientationchange是window的一個(gè)事件,可以通過(guò)監(jiān)聽(tīng)事件匹配屏幕橫豎屏。
新聞熱點(diǎn)
疑難解答
圖片精選