本文推薦 PC 端閱讀~
本文版權歸 「公衆號 | 前端一萬小時」 全部,未經受權,請勿轉載!
複製代碼
css_15
複製代碼
1. 列舉你瞭解的 HTML五、CSS3 新特性?
2. Canvas 和 SVG 有什麼區別?
複製代碼
前言: 實際上在很早以前,CSS 就支持媒體查詢了:例如,頁面有些部分須要在打印的時候隱藏或者變大,這時候可使用 media 使某些 style 只在打印的時候生效。
@media print {/* 適用於印刷的樣式 */}
css而 CSS3 的 Media Queries 的到來,可讓咱們針對不一樣的設備場景使用不一樣的 CSS。html
在使用的時候能夠在樣式表直接書寫 @media指令+空格+媒體類型(多個用逗號隔開):前端
@media print {
body {font-size: 10pt;}
}
@media screen {
body {font-size: 13px;}
}
@media screen, print {
body {line-height: 1.2;}
}
複製代碼
CSS2 的媒體類型應用場景極爲有限,CSS3 大大拓展了這一能力。面試
@media screen and (max-width: 990px) {
.container{
background: orange;
}
}
/*🚀通常來講咱們寫媒體查詢就用這句話就好了,這是最經常使用的。*/
/*意思就是:當咱們的瀏覽器屏幕(screen)的最大寬度爲990px 的時候, 如下的樣式生效。若是屏幕不是 ≤990px ,那麼如下樣式不生效。*/
複製代碼
💡另外,chrome
@media (min-width: 700px) and (orientation: landscape) { ... }
/*🚀這個是指: 當它最小寬度是 700px ,而且它的 orientation 是 landscape(橫屏)。 orientation 這個屬性表示你的瀏覽器是橫屏(landscape)的仍是豎屏(portrait)的, 好比說在手機上,瀏覽器分爲橫屏和豎屏,那這樣的話, 萬一用戶的瀏覽器看着是橫屏的,那你可能給他一些提示。 好比你作了一些小遊戲,這個小遊戲不建議橫屏去玩, 可是用戶的瀏覽器本身能夠去設置讓它去旋轉,那旋轉完成以後,東西都放不下了。 因此你能夠給他一個提示,若是檢測到它是橫屏,你可讓這段 CSS 生效, 那這段 css 可能就是一段隱藏的話,說「你瀏覽器要垂直起來去玩咱們的遊戲」。 那這樣的話,咱們不須要使用任何 JS 就能夠實現這個效果了。 */
複製代碼
width:瀏覽器寬度
height:瀏覽器高度
device-width:設備屏幕分辨率的寬度值
device-height:設備屏幕分辨率的高度值
orientation:瀏覽器窗口的方向縱向仍是橫向,當窗口的高度值大於等於寬度時該特性值爲 portrait,不然爲 landscape。
aspect-ratio:比例值,瀏覽器的縱橫比。
device-aspect-ratio:比例值,屏幕的縱橫比。
color:設備使用多少位的顏色值,若是不是彩色設備,值爲 0。
color-index:色彩表的色彩數
monochrome:單色幀緩衝器每一個像素的字節
resolution:分辨率值,設備分辨率值。
scan:電視機類型設備掃描方式,progressive 或 interlace。
grid:只能指定兩個值 0 或 1,是否基於柵格的設備。
複製代碼
<link rel="stylesheet" type="text/css" href="styleB.css" media="screen and (min-width: 600px) and (max-width: 800px)">
複製代碼
@media screen and (min-width: 600px) and (max-width: 800px) {
選擇器 {
屬性: 屬性值;
}
}
複製代碼
⚠️注意:通常咱們都是寫完一個樣式以後,再寫它對應的媒體查詢,並且要注意選擇器的權重。bash
❓
spa
答:
🔗源碼及效果展現
html3d
<div id="header"></div>
<div id="content">
<div id="left-content"></div>
<div id="right-content"></div>
</div>
複製代碼
csscode
body{
margin: 0;
}
#header{
width: 100%;
height: 200px;
background-color: #33ccff;
}
#left-content{
float: left;
width: 100px;
height: 1000px;
background-color: #ffcc99;
}
#right-content{
margin-left: 100px;
width: 100%;
height: 1000px;
background-color: #823384;
}
/*🚀當屏幕 <= 700px 時,要及時覆蓋上面的樣式*/
@media (max-width: 700px) {
#header{
width: 100%;
height: 50px;
background-color: #33ccff;
}
#left-content{
width: 0;
}
#right-content{
width: 100%;
margin-left: 0;
background-color: #823384;
}
}
複製代碼
後記: 本篇知識點很少,但每一個頁面又基本上都會用,因此理解的基礎上根據實際選擇便可。
祝好,qdywxs ♥ you!