HTML5+CSS3
CSS3的權重
1.什麼是權重
CSS權重指的是樣式的優先順序,有兩條或多條樣式作用於一個元素,權重高的那條樣式對元素起作用,權重相同的,後寫的樣式會覆蓋前面寫的樣式
2.權重的等級劃分
- !important,加在樣式屬性值後,權重值為 10000
- 內聯樣式,如:style=””,權重值為1000
- ID選擇器,如:#content,權重值為100
- 類,偽類和屬性選擇器,如: content、:hover 權重值為10
- 標籤選擇器和偽元素選擇器,如:div、p、:before 權重值為1
- 通用選擇器(*)、子選擇器(>)、相鄰選擇器(+)、同胞選擇器(~)、權重值為0
css新增選擇器
- E:nth-child(n):匹配元素型別為E且是父元素的第n個子元素
- E:nth-last-child(n):匹配元素型別為E且是父元素的倒數第n個子元素(與上一項順序相反)
- E:first-child:匹配元素型別為E且是父元素的第一個子元素
- E:last-child:匹配元素型別為E且是父元素的最後一個子元素
- E:only-child:匹配元素型別為E且是父元素中唯一的子元素
- E:nth-of-type(n):匹配父元素的第n個型別為E的子元素
- E:nth-last-of-type(n):匹配父元素的倒數第n個型別為E的子元素(與上一項順序相反)
- E:first-of-type:匹配父元素的第一個型別為E的子元素
- E:last-of-type:匹配父元素的最後一個型別為E的子元素
- E:only-of-type:匹配父元素中唯一子元素是E的子元素
- E:empty 選擇一個空的元素
- E:enabled 可用的表單控制元件
- E:disabled 失效的表單控制元件
- E:checked 選中的checkbox
- E:not(s) 不包含某元素
CSS3圓角、陰影、rgba
1.CSS3圓角
設定某一個角的圓角,比如設定左上角的圓角:
border-top-left-radius:30px 60px;
同時分別設定四個角:border-radius:30px 60px 120px 150px;
設定四個圓角相同:
border-radius:50%;
2.CSS3陰影
box-shadow:h-shadow v-shadow blur spread color inset;
分別設定陰影:水平偏移 垂直偏移 羽化大小 擴充套件大小 顏色 是否內陰影
3.rgba(新的顏色值表示法)
盒子透明度表示法:opacity:0.1;filter:alpha(opacity=10)(相容IE);
rgba(0,0,0,0.1) 前三個數值表示顏色,第四個數值表示顏色的透明度
CSS3 transition動畫
1、transition-property 設定過渡的屬性,比如:width height background-color
2、transition-duration 設定過渡的時間,比如:1s 500ms
3、transition-timing-function 設定過渡的運動方式
- linear 勻速
- ease 開始和結束慢速
- ease-in 開始是慢速
- ease-out 結束時慢速
- ease-in-out 開始和結束時慢速
- cubic-bezier(n,n,n,n)
- 比如:cubic-bezier(0.845, -0.375, 0.215, 1.335)
- 曲線設定網站:https://matthewlein.com/ceaser/
4、transition-delay 設定動畫的延遲
5、transition: property duration timing-function delay 同時設定四個屬性
CSS3 transform變換
1、translate(x,y) 設定盒子位移
2、scale(x,y) 設定盒子縮放
3、rotate(deg) 設定盒子旋轉
4、skew(x-angle,y-angle) 設定盒子斜切
5、perspective 設定透視距離
6、transform-style flat | preserve-3d 設定盒子是否按3d空間顯示
7、translateX、translateY、translateZ 設定三維移動
8、rotateX、rotateY、rotateZ 設定三維旋轉
9、scaleX、scaleY、scaleZ 設定三維縮放
10、tranform-origin 設定變形的中心點
11、backface-visibility 設定盒子背面是否可見
HTML5新結構標籤
h5新增的主要語義化標籤如下:
1、header 頁面頭部、頁首
2、nav 頁面導航
3、article 一篇文章
4、section 文章中的章節
5、aside 側邊欄
6、footer 頁面底部、頁尾
PC端相容h5的新標籤的方法,在頁面中引入以下js檔案:
<script type="text/javascript" src="//cdn.bootcss.com/html5shiv/r29/html5.js"></script>
HTML5 新增表單控制元件
新增型別:網址 郵箱 日期 時間 星期 數量 範圍 電話 顏色 搜尋
<label>網址:</label><input type="url" name="" required><br><br>
<label>郵箱:</label><input type="email" name="" required><br><br>
<label>日期:</label><input type="date" name=""><br><br>
<label>時間:</label><input type="time" name=""><br><br>
<label>星期:</label><input type="week" name=""><br><br>
<label>數量:</label><input type="number" name=""> <br><br>
<label>範圍:</label><input type="range" name=""><br><br>
<label>電話:</label><input type="tel" name=""><br><br>
<label>顏色:</label><input type="color" name=""><br><br>
<label>搜尋:</label><input type="search" name=""><br><br>
新增常用表單控制元件屬性:
1、placeholder 設定文字框預設提示文字
2、autofocus 自動獲得焦點
3、autocomplete 聯想關鍵詞
HTML5 音訊和視訊
html5增加了audio和video標籤,提供了在頁面上插入音訊和視訊的標準方法。
audio標籤
支援格式:ogg、wav、mp3
對應屬性:
1、autoplay 自動播放
2、controls 顯示播放器
3、loop 迴圈播放
4、preload 預載入
5、muted 靜音
舉例:
<audio src="source/audio.mp3" autoplay controls loop preload></audio>
<!-- 或者用如下方式: -->
<audio autoplay controls loop preload>
<source src="source/audio.mp3" type="">
<source src="source/audio02.wav" type="">
</audio>
source標籤的作用是提供多個媒體檔案地址,如果一個地址的檔案不相容,就使用下一個地址。
video標籤
支援格式:ogg、mp4、webM
屬性:
1、width
2、height
3、Poster
可選第三方播放器:
1、cyberplayer
2、tencentPlayer
3、youkuplayer
移動端頁面佈局
移動端app分類
1、Native App 原生app手機應用程式
使用原生的語言開發的手機應用,Android系統用的是java,iOS系統用的是object-C
2、Hybrid App 混合型app手機應用程式
混合使用原生的程式和html5頁面開發的手機應用
3、Web App 基於Web的app手機應用程式
完全使用html5頁面加前端js框架開發的手機應用
Viewport 視口
視口是移動裝置上用來顯示網頁的區域,一般會比移動裝置可視區域大,寬度可能是980px或者1024px,目的是為了顯示下整個為PC端設計的網頁,這樣帶來的後果是移動端會出現橫向滾動條,為了避免這種情況,移動端會將視口縮放到移動端視窗的大小。這樣會讓網頁不容易觀看,可以用 meta 標籤,name=“viewport ” 來設定視口的大小,將視口的大小設定為和移動裝置可視區一樣的大小。
背景圖強制改變大小,可以使用background新屬性
background新屬性
background-size:
- length:用長度值指定背景影像大小。不允許負值。
- percentage:用百分比指定背景影像大小。不允許負值。
- auto:背景影像的真實大小。
- cover:將背景影像等比縮放到完全覆蓋容器,背景影像有可能超出容器。
- contain:將背景影像等比縮放到寬度或高度與容器的寬度或高度相等,背景影像始終被包含在容器內。
PC及移動端頁面適配方法
裝置螢幕有多種不同的解析度,頁面適配方案有如下幾種:
1、全適配:流體佈局+響應式佈局
2、移動端適配:
- 流體佈局+少量響應式
- 基於rem的佈局
- 彈性盒模型
流體佈局
流體佈局,就是使用百分比來設定元素的寬度,元素的高度按實際高度寫固定值,流體佈局中,元素的邊線無法用百分比,可以使用樣式中的計算函式 calc() 來設定寬度,或者使用 box-sizing 屬性將盒子設定為從邊線計算盒子尺寸。
calc()
可以通過計算的方式給元素加尺寸,比如: width:calc(25% – 4px);
box-sizing
1、content-box 預設的盒子尺寸計算方式
2、border-box 置盒子的尺寸計算方式為從邊框開始,盒子的尺寸,邊框和內填充算在盒子尺寸內
響應式佈局
響應式佈局就是使用媒體查詢的方式,通過查詢瀏覽器寬度,不同的寬度應用不同的樣式塊,每個樣式塊對應的是該寬度下的佈局方式,從而實現響應式佈局。響應式佈局的頁面可以適配多種終端螢幕(pc、平板、手機)。
相關文章
- HTML5+CSS3相容收藏夾HTMLCSSS3
- 盤點使用Html5+CSS3的優勢HTMLCSSS3
- HTML5+CSS3實現的響應式垂直時間軸HTMLCSSS3
- 七夕節表白3d相簿製作(html5+css3)3DHTMLCSSS3
- 《HTML5+CSS3入門經典》——1.2 HTML5的優勢HTMLCSSS3
- 《HTML5+CSS3網頁設計入門必讀》——6.6問與答HTMLCSSS3網頁
- 《HTML5+CSS3網頁設計入門必讀》——1.2建立Web內容HTMLCSSS3網頁Web
- 《HTML5+CSS3網頁設計入門必讀》——2.4 DOCTYPE:形式更簡潔HTMLCSSS3網頁
- 《HTML5+CSS3網頁設計入門必讀》——1.3 XHTML2:不被接受HTMLCSSS3網頁
- 好程式設計師web前端分享DIV+CSS3和html5+CSS3有什麼區別程式設計師Web前端CSSS3HTML
- 《HTML5+CSS3網頁設計入門必讀》——1.7 XHTML已被廢棄:XHTML的語法永存HTMLCSSS3網頁
- 《HTML5+CSS3入門經典》——第1章 迎接新的Web時代——HTML5的出現HTMLCSSS3Web
- 《HTML5+CSS3網頁設計入門必讀》——1.5 從WebApps1.0到HTML5HTMLCSSS3網頁WebAPP
- 《HTML5+CSS3網頁設計入門必讀》——第2章 HTML5的設計2.1 設計原則HTMLCSSS3網頁
- 《HTML5+CSS3網頁設計入門必讀》——1.9在不涉及Web伺服器的情況下分發內容HTMLCSSS3網頁Web伺服器
- 《HTML5+CSS3網頁設計入門必讀》——第1章 標記簡史1.1 從IETF到W3C:HTML4的誕生過程HTMLCSSS3網頁
- HTML5+CSS3前端入門教程---從0開始通過一個商城例項手把手教你學習PC端和移動端頁面開發第5章CSS盒子模型HTMLCSSS3前端模型