css语法和规则
語法:
Selector{sRule!important;}
說明:
提升指定樣式規(guī)則的應(yīng)用優(yōu)先權(quán)。- IE6及以下瀏覽器有個比較顯式的支持問題存在,!important并不覆蓋掉在同一條樣式的后面的規(guī)則。請看下述代碼:
示例代碼:
div{color:#f00!important;color:#000;}在上述代碼中,IE6及以下瀏覽器div的文本顏色為#000,!important并沒有覆蓋后面的規(guī)則;其它瀏覽器下div的文本顏色為#f00
- IE6及以下瀏覽器要使!important生效,可用以下代碼:
示例代碼:
div{color:#f00!important;} div{color:#000;}在上述代碼中,IE6及以下瀏覽器中div的文本顏色表現(xiàn)與其它瀏覽器一致,都為#f00
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="utf-8" />
<title>!important_CSS參考手冊_web前端開發(fā)參考手冊系列</title>
<meta name="author" content="Joy Du(飄零霧雨), dooyoe@gmail.com, www.doyoe.com" />
<style>
.test{color:#f00!important;color:#000;}
.test2{color:#f00!important;}
.test2{color:#000;}?
語法:
@charset <charset>;
取值:
<charset>:- 字符編碼。如:@charset "utf-8";
說明:
在外部樣式表文件內(nèi)使用。指定該樣式表使用的字符編碼。- 該規(guī)則后面的分號是必需的,如果省略了此分號,會生成錯誤信息。
- 在外部css文件中寫法如下:
示例代碼:
?
語法:
@font-face{font-family:name;src:<url>;sRules;}
取值:
<name>:- 字體名稱
<url>:- 使用絕對或相對地址指定OpenType字體
<sRules>:- 樣式表定義
說明:
設(shè)置嵌入HTML文檔的字體。- 通常使用.ttf(TrueType)和.otf(OpenType)兩種字體格式。
- 嵌入HTML文檔的字體是指將OpenType字體(壓縮的TrueType字體)文件映射到客戶端系統(tǒng),用來提供HTML文檔使用該字體,或取代客戶端系統(tǒng)已有的同名字體。即讓客戶端顯示客戶端所沒有安裝的字體。
- 微軟的IE5已經(jīng)是開始支持這個屬性,但是只支持微軟自有的.eot(Embedded Open Type)格式,而其他瀏覽器直到現(xiàn)在都沒有支持這一字體格式。Safari從3.1開始已經(jīng)可以設(shè)置.ttf(TrueType)和.otf(OpenType)兩種字體做為自定義字體了。
兼容性:
- 淺綠 = 支持
- 紅色 = 不支持
- 墨綠 = 部分支持
- 橙色 = 實(shí)驗(yàn)性質(zhì)
支持版本\類型IEFirefoxSafariChromeOpera 版本 6-8 #1 4 5.1.7 13 11.5 版本 9-10 #2 - IE8及更早瀏覽器只支持微軟自有的.eot(Embedded Open Type)格式。
- IE9-10部分支持ttf和otf字體格式。
- 使用絕對或相對地址指定導(dǎo)入的外部樣式表文件。可以是url(url)或者直接是一個url <media_query_list>:
- 指定媒體類型和查詢條件。
- 該規(guī)則必須在樣式表頭部最先聲明。并且其后的分號是必需的,如果省略了此分號,外部樣式表將無法正確導(dǎo)入,并會生成錯誤信息。
- IE使用@import無法引入超過35條的樣式表。
- 使用url(url)和直接使用url需要注意的地方:
示例代碼:
@import url("global.css"); @import url(global.css); @import "global.css";以上3種方式都有效。當(dāng)使用url(url)的方式時,包住路徑的引號可有可無;當(dāng)直接使用url時,包住路徑的引號必須保留。
- 指定媒體查詢:
示例代碼:
@import url(example.css) screen and (min-width:800px); @import url(example.css) screen and (width:800px),(color); @import url(example.css) screen and (min-device-width:500px) and (max-device-width:1024px); - 淺綠 = 支持
- 紅色 = 不支持
- 墨綠 = 部分支持
- 橙色 = 實(shí)驗(yàn)性質(zhì)
- IE7及更早瀏覽器不支持@import指定媒體類型和媒體查詢。
- IE8不支持@import指定媒體查詢。
- identifier定義一個動畫名稱 <keyframes-blocks>:
- 定義動畫在每個階段的樣式,即幀動畫。
- @keyframes定義的動畫名稱用來被animation-name所使用。
- 定義動畫時,簡單的動畫可以直接使用關(guān)鍵字from和to,即從一種狀態(tài)過渡到另一種狀態(tài):
示例代碼:
@keyframes testanimations{from{opacity:1;}to{opacity:0;} }其中testanimations是該動畫的名字,該動畫表示某個東西將逐漸消失。
- 如果復(fù)雜的動畫,可以混合<percentage>去設(shè)置某個時間段內(nèi)的任意時間點(diǎn)的樣式:
示例代碼:
@keyframes testanimations{from{transform:translate(0,0);}20%{transform:translate(20,20);}40%{transform:translate(40,0);}60%{transform:translate(60,20);}80%{transform:translate(80,0);}to{transform:translate(100,20);} } - 當(dāng)然,也可以不適用關(guān)鍵字from和to,而都使用<percentage>:
示例代碼:
@keyframes testanimations{0%{transform:translate(0,0);}20%{transform:translate(20,20);}40%{transform:translate(40,0);}60%{transform:translate(60,20);}80%{transform:translate(80,0);}100%{transform:translate(100,20);} }注意,這里的0%不能簡寫成0。
- 淺綠 = 支持
- 紅色 = 不支持
- 墨綠 = 部分支持
- 橙色 = 實(shí)驗(yàn)性質(zhì)
- 指定設(shè)備類型。媒體類型包括:參閱媒體類型。(CSS2) <expression>:
- 指定媒體查詢使用的媒體特性。這類似于CSS屬性,如:max-width:960px。(CSS3)
- IE8及以下只能實(shí)現(xiàn)CSS2中的部分,即只可以設(shè)置媒體類型。
-
媒體查詢可以被用在CSS中的@media和@import規(guī)則上,也可以被用在HTML和XML中。
示例代碼:
@media screen and (width:800px){ … } @import url(example.css) screen and (width:800px); <link media="screen and (width:800px)" rel="stylesheet" href="example.css" /> <?xml-stylesheet media="screen and (width:800px)" rel="stylesheet" href="example.css" ?> -
列舉幾種使用方式:
@media all and (width:1024px){body{color:#f00;} } @media all and (device-height:800px){ … } @media all and (orientation:landscape){ … } @media all and (device-aspect-ratio:16/10){ … } @media all and (min-color:1){ … } @media all and (monochrome:0){ … } @media all and (grid:0){ … } - 淺綠 = 支持
- 紅色 = 不支持
- 墨綠 = 部分支持
- 橙色 = 實(shí)驗(yàn)性質(zhì)
- IE8及更早瀏覽器不支持媒體查詢。
- 頁面標(biāo)識符 <pseudo-class>:
- 打印偽類:first, :left, :right
- 淺綠 = 支持
- 紅色 = 不支持
- 墨綠 = 部分支持
- 橙色 = 實(shí)驗(yàn)性質(zhì)
- 淺綠 = 支持
- 紅色 = 不支持
- 墨綠 = 部分支持
- 橙色 = 實(shí)驗(yàn)性質(zhì)
示例:
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8" /> <title>@font-face_CSS參考手冊_web前端開發(fā)參考手冊系列</title> <meta name="author" content="Joy Du(飄零霧雨), dooyoe@gmail.com, www.doyoe.com" /> <style> @font-face{ font-family:YH; src:url(http://domain/fonts/MSYH.TTF); } body{font-family:'YH';} </style> </head> <body> <div>如果你的機(jī)器沒有安裝微軟雅黑Microsoft YaHei,可以玩玩看。如果你用的是老版本IE,很遺憾你得找找看.eot格式的該字體</div> </body> </html>語法:
@import <url> <media_query_list>
<media_query_list>:[<media_query>[',' <media_query>]*]?
?
<media_query>:[only | not]? <media_type> [and <expression>]* | <expression> [and <expression>]*
<expression>:'('<media_feature>[:<value>]?')'
取值:
<url>:說明:
指定導(dǎo)入的外部樣式表及目標(biāo)媒體。兼容性:
支持版本\類型IEFirefoxSafariChromeOpera 版本 6-7 #1 4 5.1.7 13 11.5 版本 8 #2 版本 9 示例:
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8" /> <title>@import_CSS參考手冊_web前端開發(fā)參考手冊系列</title> <meta name="author" content="Joy Du(飄零霧雨), dooyoe@gmail.com, www.doyoe.com" /> <style> @import url("style.css") screen, print; </style> </head> <body> </body> </html>?
語法:
@keyframes <identifier> '{' <keyframes-blocks> '}';
<keyframes-blocks>:[ [ from | to | <percentage> ]{ sRules } ] [ [ , from | to | <percentage> ]{ sRules } ]*
?
取值:
<identifier>:說明:
指定動畫名稱和動畫效果。兼容性:
支持版本\類型IEFirefoxSafariChromeOpera 版本 6-9 4 5.1.7 13-23 11.5 版本 10 5-18 12 版本 16 12.1 示例:
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8" /> <title>@keyframes_CSS參考手冊_web前端開發(fā)參考手冊系列</title> <meta name="author" content="Joy Du(飄零霧雨), dooyoe@gmail.com, www.doyoe.com" /> <style> #sport{position:relative;width:500px;height:400px;border:1px solid #ddd;} #staff{position:absolute;z-index:3;bottom:10px;left:10px;overflow:hidden;width:180px;height:8px;border-radius:3px;background:#ddd;line-height:20; -moz-animation:staff 3s linear; -webkit-animation:staff 3s linear; -o-animation:staff 3s linear; -ms-animation:staff 3s linear; animation:staff 3s linear; } #ball{position:absolute;z-index:3;bottom:20px;left:90px;overflow:hidden;width:30px;height:30px;border-radius:15px;box-shadow:0 0 10px rgba(204,102,0,.8);background:#F6D66E;background:-moz-linear-gradient(top,#fff,#F6D66E);background:-webkit-linear-gradient(top,#fff,#F6D66E);background:-o-linear-gradient(top,#fff,#F6D66E);background:-ms-linear-gradient(top,#fff,#F6D66E);background:linear-gradient(top,#fff,#F6D66E);line-height:20; -moz-animation:ball 3s linear; -webkit-animation:ball 3s linear; -o-animation:ball 3s linear; -ms-animation:ball 3s linear; animation:ball 3s linear; } @-moz-keyframes ball{ 0%{-moz-transform:translate(0,0);} 5%{-moz-transform:translate(-90px,-100px);} 18%{-moz-transform:translate(0,-350px);} 35%{-moz-transform:translate(200px,0);} 46%{-moz-transform:translate(380px,-160px);} 60%{-moz-transform:translate(250px,-350px);} 78%{-moz-transform:translate(60px,0);} 100%{-moz-transform:translate(0,0);} } @-webkit-keyframes ball{ 0%{-webkit-transform:translate(0,0);} 5%{-webkit-transform:translate(-90px,-100px);} 18%{-webkit-transform:translate(0,-350px);} 35%{-webkit-transform:translate(200px,0);} 46%{-webkit-transform:translate(380px,-160px);} 60%{-webkit-transform:translate(250px,-350px);} 78%{-webkit-transform:translate(60px,0);} 100%{-webkit-transform:translate(0,0);} } @-o-keyframes ball{ 0%{-o-transform:translate(0,0);} 5%{-o-transform:translate(-90px,-100px);} 18%{-o-transform:translate(0,-350px);} 35%{-o-transform:translate(200px,0);} 46%{-o-transform:translate(380px,-160px);} 60%{-o-transform:translate(250px,-350px);} 78%{-o-transform:translate(60px,0);} 100%{-o-transform:translate(0,0);} } @-ms-keyframes ball{ 0%{-ms-transform:translate(0,0);} 5%{-ms-transform:translate(-90px,-100px);} 18%{-ms-transform:translate(0,-350px);} 35%{-ms-transform:translate(200px,0);} 46%{-ms-transform:translate(380px,-160px);} 60%{-ms-transform:translate(250px,-350px);} 78%{-ms-transform:translate(60px,0);} 100%{-ms-transform:translate(0,0);} } @keyframes ball{ 0%{transform:translate(0,0);} 5%{transform:translate(-90px,-100px);} 18%{transform:translate(0,-350px);} 35%{transform:translate(200px,0);} 46%{transform:translate(380px,-160px);} 60%{transform:translate(250px,-350px);} 78%{transform:translate(60px,0);} 100%{transform:translate(0,0);} } @-moz-keyframes staff{ 0%{-moz-transform:translate(0,0);} 6%{-moz-transform:translate(260px,0);} 20%{-moz-transform:translate(300px,0);} 30%{-moz-transform:translate(300px,0);} 40%{-moz-transform:translate(200px,0);} 65%{-moz-transform:translate(40px,0);} 79%{-moz-transform:translate(0,0);} 100%{-moz-transform:translate(0,0);} } @-webkit-keyframes staff{ 0%{-webkit-transform:translate(0,0);} 6%{-webkit-transform:translate(260px,0);} 20%{-webkit-transform:translate(300px,0);} 30%{-webkit-transform:translate(300px,0);} 40%{-webkit-transform:translate(200px,0);} 65%{-webkit-transform:translate(40px,0);} 79%{-webkit-transform:translate(0,0);} 100%{-webkit-transform:translate(0,0);} } @-o-keyframes staff{ 0%{-o-transform:translate(0,0);} 6%{-o-transform:translate(260px,0);} 20%{-o-transform:translate(300px,0);} 30%{-o-transform:translate(300px,0);} 40%{-o-transform:translate(200px,0);} 65%{-o-transform:translate(40px,0);} 79%{-o-transform:translate(0,0);} 100%{-o-transform:translate(0,0);} } @-ms-keyframes staff{ 0%{-ms-transform:translate(0,0);} 6%{-ms-transform:translate(260px,0);} 20%{-ms-transform:translate(300px,0);} 30%{-ms-transform:translate(300px,0);} 40%{-ms-transform:translate(200px,0);} 65%{-ms-transform:translate(40px,0);} 79%{-ms-transform:translate(0,0);} 100%{-ms-transform:translate(0,0);} } @keyframes staff{ 0%{transform:translate(0,0);} 6%{transform:translate(260px,0);} 20%{transform:translate(300px,0);} 30%{transform:translate(300px,0);} 40%{transform:translate(200px,0);} 65%{transform:translate(40px,0);} 79%{transform:translate(0,0);} 100%{transform:translate(0,0);} } </style> </head> <body> <div id="sport"> <span id="ball">彈球</span> <span id="staff">滑桿</span> </div> </body> </html>語法:
@media:<media_query_list>
?
<media_query_list>:[<media_query>[',' <media_query>]*]?
?
<media_query>:[only | not]? <media_type> [and <expression>]* | <expression> [and <expression>]*
<expression>:'('<media_feature>[:<value>]?')'
取值:
<media_type>:說明:
指定樣式表規(guī)則用于指定的媒體類型和查詢條件。兼容性(指定媒體類型):
支持版本\類型IEFirefoxSafariChromeOpera 版本 6-8 #1 4 5.1.7 13 11.5 版本 9 示例:
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8" /> <title>@media_CSS參考手冊_web前端開發(fā)參考手冊系列</title> <meta name="author" content="Joy Du(飄零霧雨), dooyoe@gmail.com, www.doyoe.com" /> <style> .test,.test2{display:none;} /* 本條為CSS2部分,IE8及以下只支持本條 */ @media screen{ body{color:#f00;} } /* 下列為CSS3部分 */ @media screen and (min-width:960px){ body{background:#999;} } @media screen and (device-width:1024px){ .test{display:block;} } @media screen and (width:1024px){ .test2{display:block;} } </style> </head> <body> <div>Media Queries媒體查詢</div> <div class="test">如果你的顯示器水平分辨率為1024px的話將能看到本條規(guī)則的效果(取決于輸出設(shè)備屏幕分辨率的大小,不隨包括瀏覽器在內(nèi)的窗體大小而改變)</div> <div class="test2">如果視口寬度為1024px的話將能看到本條規(guī)則的效果(隨包括瀏覽器在內(nèi)的窗體大小而改變)</div> </body> </html>語法:
@page <label> <pseudo-classes>{ sRules }
取值:
<label>:說明:
設(shè)置頁面容器的版式,方向,邊空等。兼容性:
支持版本\類型IEFirefoxSafariChromeOpera 版本 6-7 4-6 5.1.7 13 11.5 版本 8 示例:
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8" /> <title>@page_CSS參考手冊_web前端開發(fā)參考手冊系列</title> <meta name="author" content="Joy Du(飄零霧雨), dooyoe@gmail.com, www.doyoe.com" /> <style> @page:first{margin:300px;} </style> </head> <body> <div>@page:first{margin:300px;}</div> </body> </html>語法:
/* 這里是注釋內(nèi)容 */
說明:
用于注釋CSS中的某些內(nèi)容。兼容性:
支持版本\類型IEFirefoxSafariChromeOpera 版本 6 4 5.1.7 13 11.5 示例:
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8" /> <title>comment_CSS參考手冊_web前端開發(fā)參考手冊系列</title> <meta name="author" content="Joy Du(飄零霧雨), dooyoe@gmail.com, www.doyoe.com" /> <style> .test{color:#f00;/*紅色*/} </style> </head> <body> <div class="test">CSS中的注釋語法:/* 注釋的內(nèi)容 */</div> </body> </html>
轉(zhuǎn)載于:https://www.cnblogs.com/waitingforbb/p/7107879.html
總結(jié)
- 上一篇: 房屋租赁登记备案证明怎么办理?
- 下一篇: [bzoj3532][Sdoi2014]