成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

CSS hack用法案例詳解

瀏覽:612日期:2022-06-03 11:29:26

之前一直很狹隘的對CSS hack持有偏見,覺得寫得規范的代碼不應該使用這些“邪門歪道”,可最近產品發布一個小問題卻讓我頭疼了很久,最后查了一下資料,竟然使用CSS hack輕松解決了,不得不服啊,對付神奇的IE就得使用這些利器。

什么是CSS hack

由于不同的瀏覽器,甚至同一瀏覽器的不同版本對CSS的解析認識不一樣,導致生成的頁面效果不一致,寫出針對不同瀏覽器CSS code就稱為CSS hack。

常用的CSS hack 有三種方式,CSS 內部hack、選擇器hack、HTML 頭部引用,其中第一種最常用。

CSS 內部hack

正經的CSS是這么寫的

<!DOCTYPE html><html>    <head><title>Test</title><style type="text/css" >    .test    {background-color:green;    }</style>    </head>    <body><div></div>    </body><html>

這樣的代碼對于所有當前常用的瀏覽器都是好使的,結果應該是這樣子的

但是在CSS3中常見一些這樣的寫法

/*Mozilla內核瀏覽器:firefox3.5+*/  -moz-transform: rotate | scale | skew | translate ; /*Webkit內核瀏覽器:Safari and Chrome*/  -webkit-transform: rotate | scale | skew | translate ; /*Opera*/  -o-transform: rotate | scale | skew | translate ; /*IE9*/  -ms-transform: rotate | scale | skew | translate ; /*W3C標準*/  transform: rotate | scale | skew | translate ;

如果沒有注釋乍一看還以為逆天了,這樣的代碼都好使!這樣的代碼確實好使,CSS3目前標準還沒有統一,各個瀏覽器都有自己的表現方式,甚至有的實現,有的未實現,在前面加一些前綴以表示支持某個特定瀏覽器,這也是CSS 內部hack的基本原理,向上面這些簡單易懂,但是真正的CSS hack 遠遠不止于此,因為有不死的IE6及其各種奇葩的兄弟版本。

CSS 內部hack 語法是這樣的 selector{<hack>?property:value<hack>?;} ,上面代碼所示的是在屬性名稱之前的hack,當然還有這樣的

*background-color:green;

屬性前面加個“*”這樣的寫法只會對IE6、7生效,其它版本IE及現代瀏覽器會忽略這條指令(沒有特殊說明,本文所有hack都是指在聲明了DOCTYPE的文檔的效果)

-background-color:green;

屬性前面有個“-”這樣的只有IE6識別,還有些在后面的hack

background-color:green!important;

這樣在屬性值后面添加“!important”的寫法只有IE6不能識別,其它版本IE及現代瀏覽器都可以識別,還有“+”、“\0”、”\9” 等,亂七八糟好煩,畫個表

這樣就清楚多了吧。如果只想給上面的test DIV在IE訪問的時候加綠色背景,就可以這么寫

background-color:green\9;

如果想IE6紅色,IE7綠色,其它黃色(當然沒人這么無聊)就可以這么寫

background-color:green; +background-color:green; _background-color:green;

選擇器hack

選擇器hanck主要是針對IE瀏覽器,其實并不怎么常用,語法是這樣的:<hack> selector{ sRules }

:root .test{    background-color:green;}

HTML頭部引用

HTML頭部引用就比較特殊了,類似于程序語句,只能使用在HTML文件里,而不能在CSS文件中使用,并且只有在IE瀏覽器下才能執行,這個代碼在非IE瀏覽下非單不是執行該條件下的定義,而是當做注釋視而不見。

<!– 默認先調用css.css樣式表 –><link rel="stylesheet" type="text/css" href="css.css" rel="external nofollow"  /><!–[if IE 7]><!– 如果IE瀏覽器版是7,調用ie7.css樣式表 –><link rel="stylesheet" type="text/css" href="ie7.css" rel="external nofollow"  /><![endif]–><!–[if lte IE 6]><!– 如果IE瀏覽器版本小于等于6,調用ie.css樣式表 –><link rel="stylesheet" type="text/css" href="ie.css" rel="external nofollow"  /><![endif]–>

lte:就是Less than or equal to的簡寫,也就是小于或等于的意思。

lt :就是Less than的簡寫,也就是小于的意思。

gte:就是Greater than or equal to的簡寫,也就是大于或等于的意思。

gt :就是Greater than的簡寫,也就是大于的意思。

! :就是不等于的意思,跟javascript里的不等于判斷符相同。

書寫順序

看看,看看,這么多姿勢,那么一個效果,好多種寫法,什么順序寫才能保證各個瀏覽器都得到希望的效果呢?因為CSS只要是同一級別,出現重復屬性設置,后出現的會覆蓋前面出現的,所以在書寫的時候一般把識別能力強的寫前面,看個例子

_background-color:red;background-color:green;

如果希望DIV在IE6上是紅色,其它是綠色,上面的寫法可不可以呢?試一下發現所有瀏覽器上都是綠色,因為在IE6解析的時候,第一句能夠識別,背景設為紅色,但是第二句所有瀏覽器都識別,IE6也不例外,背景顏色又被設為綠色,所以得反過來寫

background-color:green;_background-color:red;

總結出的規律就是:先一般,再特殊。有興趣的同學可以試試試試下面CSS,看看和你想的效果是否一樣

background-color:blue; /*所有瀏覽器*/background-color:red\9;/*所有的ie*/background-color:yellow\0; /* ie8+*/+background-color:pink; /*+ ie7*/

到此這篇關于CSS hack用法案例詳解的文章就介紹到這了,更多相關CSS hack用法內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: CSS HTML
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
欧美日韩一区二区三区四区五区 | 久久国产精品99久久久久久老狼| 亚洲性图久久| 日韩亚洲欧美中文三级| 亚洲成a人v欧美综合天堂| 国产在线欧美日韩| 久久久久久久久久久久电影| 国产美女主播视频一区| 在线观看国产91| 日产欧产美韩系列久久99| 国产乱码精品一区二区三区不卡| 国产精品日产欧美久久久久| 国产成人精品一区二区三区四区| 欧美人xxxx| 韩国视频一区二区| 欧美日韩在线播放一区| 婷婷久久综合九色国产成人 | 久久精品亚洲麻豆av一区二区| 国产成人免费xxxxxxxx| 91精品国产一区二区| 国产精品一线二线三线精华| 欧美精品 日韩| 国产a久久麻豆| 欧美一区二区三区不卡| 久久99精品国产.久久久久| 欧美无乱码久久久免费午夜一区 | 在线91免费看| 国产精品一区二区在线观看不卡| 欧美日韩国产不卡| 国产91在线|亚洲| 日韩免费福利电影在线观看| 国产精品1区2区| 精品国产乱码久久久久久图片| 成人午夜精品在线| 欧美一区二区三区喷汁尤物| 国产成人精品三级| 日韩视频免费观看高清完整版 | 久久精品无码一区二区三区 | 在线亚洲欧美| 一区二区三区中文字幕在线观看| 一区二区三区|亚洲午夜| 一区二区在线免费观看| 99热免费精品在线观看| 一区二区三区在线视频观看58| 国产欧美不卡| 亚洲6080在线| 欧美在线观看一区二区| 国内外成人在线| 日韩三级视频在线观看| 欧美成人一区二免费视频软件| 国产精品色在线| 91久久国产自产拍夜夜嗨| 亚洲精品中文字幕在线观看| 亚洲一区二区三区高清不卡| 午夜久久电影网| 欧美理论在线播放| 99视频精品在线| 国产精品久久久久久久久晋中 | 久久久亚洲高清| 一区一区视频| 天天综合天天综合色| 18成人免费观看视频| 亚洲综合视频在线| 在线亚洲+欧美+日本专区| 成人一二三区视频| 国产精品初高中害羞小美女文| 国产欧美日韩| 九九精品一区二区| 久久亚洲二区三区| 日韩亚洲精品在线| 精品无人码麻豆乱码1区2区| 欧美精品一区二区三区在线播放 | 日韩成人一级片| 欧美一区二区在线不卡| 91丨九色丨国产丨porny| 亚洲视频在线观看三级| 玖玖视频精品| 成人精品鲁一区一区二区| 亚洲欧洲日韩在线| 色素色在线综合| 成人综合婷婷国产精品久久免费| 国产精品你懂的| 色哟哟一区二区| 丁香另类激情小说| 亚洲精品一二三| 欧美亚洲一区二区在线| 91免费观看在线| 天天综合日日夜夜精品| 欧美电影精品一区二区| 国内精品嫩模av私拍在线观看| 三级影片在线观看欧美日韩一区二区| 69p69国产精品| 红杏aⅴ成人免费视频| 蜜桃视频在线观看一区| 久久影视一区二区| 午夜一区不卡| www.欧美色图| 亚洲风情在线资源站| 欧美一级在线免费| 国产一区二区三区的电影 | 日韩欧美在线网站| 韩国在线视频一区| 久久aⅴ国产欧美74aaa| 国产欧美一二三区| 91官网在线观看| 国产综合精品| 久久99国产精品麻豆| 国产精品电影院| 91麻豆精品国产91久久久更新时间| 伊人成人在线| 国产一区日韩二区欧美三区| 亚洲欧美日韩久久| 日韩一区二区三区视频在线观看| 国产精品一区视频网站| 成人a区在线观看| 亚洲成人精品一区| 国产亚洲福利社区一区| 在线观看亚洲专区| 亚洲大胆av| 成人性生交大合| 午夜精品福利一区二区三区蜜桃| 国产日韩精品一区| 欧美日韩精品免费| 日韩一级不卡| av在线不卡网| 蜜臀久久久久久久| 国产精品久久久久aaaa樱花| 欧美精品丝袜久久久中文字幕| 亚洲国产日韩欧美| 成人黄色电影在线| 午夜伦欧美伦电影理论片| 国产欧美一区二区精品仙草咪| 欧美日本国产视频| 国产午夜久久| 欧美黄色免费| 风间由美一区二区三区在线观看| 午夜精品一区二区三区电影天堂| 国产蜜臀av在线一区二区三区| 欧美日韩一区二区三区四区五区| 国产精品美女| 韩日精品视频| 99国产精品久| 国精品**一区二区三区在线蜜桃| 亚洲高清在线视频| 国产精品久久久久毛片软件| 精品国产乱码久久久久久老虎| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 亚洲午夜激情网页| 国产欧美精品一区二区三区四区| 日韩一区二区在线观看视频播放| 色婷婷综合久久久中文字幕| 亚洲美女黄色| 欧美三级第一页| av一区二区三区黑人| 国产麻豆精品95视频| 日本人妖一区二区| 亚洲精品乱码久久久久久 | 亚洲精品免费播放| 国产三级欧美三级| 日韩欧美一区二区在线视频| 欧美伦理影视网| 在线日韩国产精品| 亚洲精品乱码久久久久久蜜桃麻豆| 91麻豆免费看片| 成人理论电影网| 成人手机在线视频| 国产福利一区二区三区在线视频| 另类人妖一区二区av| 秋霞电影网一区二区| 亚洲视频你懂的| 国产精品久久久久久久久免费相片| 国产偷v国产偷v亚洲高清| 精品久久久久久最新网址| 色视频成人在线观看免| 亚洲欧美国产不卡| 亚洲高清毛片| 999亚洲国产精| 日韩一区二区免费看| 亚洲国产1区| 99综合在线| 一区二区三区你懂的| 一本色道久久综合亚洲二区三区| 亚洲成人资源| 欧美一区网站| 91精品欧美综合在线观看最新 | 国产精品久久久久久久久免费相片| 日本va欧美va欧美va精品| 国产成人午夜高潮毛片| 日韩精品自拍偷拍| 久久先锋资源| 国产精品播放| 国产一区二区美女诱惑| 日韩毛片精品高清免费| 欧美电视剧免费全集观看| 欧美午夜片在线观看| 一本色道久久综合亚洲精品不卡| 国产大片一区二区| 免费在线看成人av| 欧美三区在线观看| 国产一区不卡精品|