CSS常見技巧

1.CSS Sprite(雪碧圖|精靈圖)指什么? 有什么作用

CSS Sprite(雪碧圖|精靈圖)指該方法是將小圖標(biāo)和背景圖像合并到一張圖片上,從而減少你的網(wǎng)站的HTTP請(qǐng)求數(shù)量菜枷,然后利用css的背景定位來顯示需要顯示的圖片部分栖博。
作用:

  • 1.減少加載網(wǎng)頁圖片時(shí)對(duì)服務(wù)器的請(qǐng)求次數(shù)踱讨。
  • 2.提高頁面的加載速度。
  • 3.減少鼠標(biāo)滑過的一些bug。

參考css雪碧

2.img標(biāo)簽和CSS背景使用圖片在使用場(chǎng)景上有何區(qū)別

如果一張圖片是網(wǎng)頁內(nèi)容的一部分,就該用img標(biāo)簽愈案,否則就建議用 CSS 背景圖。
主要區(qū)別在于img標(biāo)簽一般用于需要單獨(dú)點(diǎn)擊生效的圖片鹅搪,這些圖片一般是從后臺(tái)傳入的站绪,可以動(dòng)態(tài)交互。
css背景一般用于靜態(tài)不變的圖片丽柿』肿迹可以是頁面LOGO等。
舉例:



在京東首頁上航厚,經(jīng)常變化的圖片用到img顷歌。和鏈接文字連在一起的锰蓬,用背景圖片幔睬。

3.title和 alt屬性分別有什么作用

title屬性是為標(biāo)簽提供額外的信息說明,例如<a href="xx" title="鏈接">這是鏈接</a>芹扭,把鼠標(biāo)放在鏈接上時(shí)麻顶,會(huì)顯示title的內(nèi)容,以達(dá)到補(bǔ)充說明或者提示的效果舱卡。
而alt屬性是起替代作用的辅肾。例如圖片<img src="abc.png" alt="圖片">,當(dāng)圖片來源出錯(cuò)無法正常顯示時(shí)轮锥,顯示alt屬性的值矫钓。alt是替代圖像而不是提供說明。alt屬性還可以用于搜索引擎優(yōu)化。因?yàn)樗阉匾媸菬o法直接讀取圖像的信息的新娜,alt可以為其提供文字信息所以對(duì)搜索引擎比較友好赵辕。

4.background: url(abc.png) 0 0 no-repeat;這句話是什么意思

背景圖片是和html文檔同一個(gè)文件夾的abc.png,這個(gè)圖片在這個(gè)元素的左上角概龄,而且是不被重復(fù)的还惠。可以舉個(gè)例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>background</title>
    <style>
        div {
            width:500px;
            height:500px;
            border: 1px solid red;
            background: url(abc.png) 0 0  no-repeat;
        }
    </style>
</head>
<body>
    <div></div>
</body>
</html>

效果:


5.background-size有什么作用? 兼容性如何? 常用的值是?

background-size 屬性規(guī)定背景圖像的尺寸私杜。



兼容性由圖知蚕键,IE9+、Firefox 4+衰粹、Opera锣光、Chrome 以及 Safari 5+ 支持 background-size 屬性。
常用的值:
background-size: length/percentage/cover/contain;

描述
length 設(shè)置背景圖像的高度和寬度铝耻。第一個(gè)值設(shè)置寬度嫉晶,第二個(gè)值設(shè)置高度。如果只設(shè)置一個(gè)值田篇,則第二個(gè)值會(huì)被設(shè)置為auto替废。
percentage 以父元素的百分比來設(shè)置背景圖像的寬度和高度。第一個(gè)值設(shè)置寬度泊柬,第二個(gè)值設(shè)置高度椎镣。如果只設(shè)置一個(gè)值,則第二個(gè)值會(huì)被設(shè)置為 auto兽赁。
cover 把背景圖像擴(kuò)展至足夠大状答,以使背景圖像完全覆蓋背景區(qū)域。背景圖像的某些部分也許無法顯示在背景定位區(qū)域中刀崖。
contain 把圖像圖像擴(kuò)展至最大尺寸惊科,以使其寬度和高度完全適應(yīng)內(nèi)容區(qū)域。

舉例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>background-size</title>
    <style>
        div {
            width: 250px;
            height: 350px;
            background: url(abc.png) no-repeat;
            margin-top: 20px;
            border: 1px solid red;
            display: inline-block;
        }
        img {
            display: block;
        }
        .item1 {
            background-size: 400px 300px;
        }
        .item2 {
            background-size: 100% 100%;
        }
        .item3 {
            background-size: cover;
        }
        .item4 {
            background-size: contain;
        }
    </style>
</head>
<body>
    <img src="abc.png" alt="圖片">
    <div class="item1"></div>
    <div class="item2"></div>
    <div class="item3"></div>
    <div class="item4"></div>
</body>
</html>

效果:



最上面的是原圖片亮钦,原圖片大小寬400px馆截,高300px。

.item1 {
    background-size: 400px 300px;
        }

設(shè)置背景的寬高為px時(shí)蜂莉,圖片大小變化蜡娶,但是因?yàn)閐iv的寬高有限制,所以只顯示出在div范圍內(nèi)的圖像映穗。

  .item2 {
            background-size: 100% 100%;
        }

設(shè)置寬高為100%時(shí)窖张,正好充滿整個(gè)div空間。

.item3 {
            background-size: cover;
        }

設(shè)置為cover時(shí)蚁滋,圖像被放大宿接,使高度完全覆蓋空間赘淮,但是圖片寬度此時(shí)大于div的寬度,不能完全顯示睦霎。

.item4 {
            background-size: contain;
        }

設(shè)置為contain時(shí)拥知,圖片完全顯示在div中,但因圖片原始寬度400px比div的寬度250px要大碎赢,為使圖片完全顯示低剔,圖片進(jìn)行了縮放,div中有空白肮塞。
cover襟齿、contain設(shè)置背景圖片的size是使圖片按原始比例縮放的,如果把上述div的寬度設(shè)置為200px,高度設(shè)置為150px,則設(shè)置cover枕赵,contain屬性時(shí)猜欺,背景圖片如下圖所示:



顯示是一樣的。

6.如何讓一個(gè)div水平居中拷窜?如何讓圖片水平居中

讓一個(gè)div水平居中开皿,可以使用margin: xx auto;,先設(shè)置div的寬度篮昧,再設(shè)置div的左右外邊距是auto赋荆。
舉例:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
  <style>
    div {
      width:300px;
      height: 200px;
      border: 1px solid red;
      margin: 0 auto;
    }
  </style>
</head>
<body>
  <div>
    饑人谷
  </div>
</body>
</html>

效果:


讓圖片水平居中,對(duì)它的父元素設(shè)置text-align:center;懊昨。
舉例:

  <!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
  <style>
    div {
      width:500px;
      height: 500px;
      border: 1px solid red;
      margin: 0 auto;
      text-align: center;
    }
  </style>
</head>
<body>
  <div>
    <img src="abc.png" alt="圖片">
  </div>
</body>
</html>

效果:


7.如何設(shè)置元素透明? 兼容性窄潭?

opacity屬性用來設(shè)置元素的不透明度。取值0-1酵颁。0代表完全透明嫉你,1代表完全不透明。



兼容性:所有瀏覽器都支持 opacity 屬性躏惋。但I(xiàn)E8 以及更早的版本支持替代的 filter 屬性幽污。例如:filter:Alpha(opacity=50)。

8.opacity和 rgba都能設(shè)置透明簿姨,有什么區(qū)別

主要區(qū)別是opacity設(shè)置透明距误,對(duì)其子元素也適應(yīng)。rgba設(shè)置透明只對(duì)其本身起作用款熬。
舉例:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
  <style>
    .opacity {
      width: 100px;
      height: 100px;
      background: #0f0;
      opacity: 0.3;
      color: #000;
      margin-bottom: 10px;
    }
    .alpha {
      width: 100px;
      height: 100px;
      background:rgba(0,255,0,0.3);
      color: #000;
    }
  </style>
</head>
<body>
  <div class="opacity">
    text
  </div>
  <div class="alpha"> 
    text
  </div>
</body>
</html>

效果:



從圖中可以看出設(shè)置opacity屬性的div內(nèi)部文本的透明度也改變了深寥。而rgba則沒有改變文本的透明度。

本文版權(quán)歸作者和饑人谷所有贤牛,轉(zhuǎn)載請(qǐng)注明出處

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市则酝,隨后出現(xiàn)的幾起案子殉簸,更是在濱河造成了極大的恐慌闰集,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,204評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件般卑,死亡現(xiàn)場(chǎng)離奇詭異武鲁,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)蝠检,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門沐鼠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人叹谁,你說我怎么就攤上這事饲梭。” “怎么了焰檩?”我有些...
    開封第一講書人閱讀 164,548評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵憔涉,是天一觀的道長。 經(jīng)常有香客問我析苫,道長兜叨,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,657評(píng)論 1 293
  • 正文 為了忘掉前任衩侥,我火速辦了婚禮国旷,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘茫死。我一直安慰自己议街,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,689評(píng)論 6 392
  • 文/花漫 我一把揭開白布璧榄。 她就那樣靜靜地躺著特漩,像睡著了一般。 火紅的嫁衣襯著肌膚如雪骨杂。 梳的紋絲不亂的頭發(fā)上涂身,一...
    開封第一講書人閱讀 51,554評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音搓蚪,去河邊找鬼蛤售。 笑死,一個(gè)胖子當(dāng)著我的面吹牛妒潭,可吹牛的內(nèi)容都是我干的悴能。 我是一名探鬼主播,決...
    沈念sama閱讀 40,302評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼雳灾,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼漠酿!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起谎亩,我...
    開封第一講書人閱讀 39,216評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤炒嘲,失蹤者是張志新(化名)和其女友劉穎宇姚,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體夫凸,經(jīng)...
    沈念sama閱讀 45,661評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡浑劳,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,851評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了夭拌。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片魔熏。...
    茶點(diǎn)故事閱讀 39,977評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖鸽扁,靈堂內(nèi)的尸體忽然破棺而出蒜绽,到底是詐尸還是另有隱情,我是刑警寧澤献烦,帶...
    沈念sama閱讀 35,697評(píng)論 5 347
  • 正文 年R本政府宣布滓窍,位于F島的核電站,受9級(jí)特大地震影響巩那,放射性物質(zhì)發(fā)生泄漏吏夯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,306評(píng)論 3 330
  • 文/蒙蒙 一即横、第九天 我趴在偏房一處隱蔽的房頂上張望噪生。 院中可真熱鬧,春花似錦东囚、人聲如沸跺嗽。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽桨嫁。三九已至,卻和暖如春份帐,著一層夾襖步出監(jiān)牢的瞬間璃吧,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評(píng)論 1 270
  • 我被黑心中介騙來泰國打工废境, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留畜挨,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,138評(píng)論 3 370
  • 正文 我出身青樓噩凹,卻偏偏與公主長得像巴元,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子驮宴,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,927評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 一逮刨、CSS Sprite(雪碧圖|精靈圖)指什么? 有什么作用 1、css sprite是一種圖片處理方法幻赚,就是將...
    鴻鵠飛天閱讀 397評(píng)論 0 0
  • 一禀忆、CSS Sprite(雪碧圖|精靈圖)指什么? 有什么作用承璃? CSS Sprite把多個(gè)背景圖片合成為一張哈踱,通...
    dengpan閱讀 327評(píng)論 0 0
  • 課程目標(biāo) 熟悉常見的樣式寫法,如背景圖片芍耘、居中佳谦、透明等 學(xué)習(xí)建議 問答題一定要?jiǎng)邮謱?demo戴涝,否則學(xué)習(xí)效果只能達(dá)...
    饑人谷_江君閱讀 823評(píng)論 0 1
  • 啊啊啊啊,要開始看論文了钻蔑,感覺時(shí)間都不夠用啥刻,好憂傷。 一.CSS Sprite(雪碧圖|精靈圖)指什么? 有什么作...
    婷樓沐熙閱讀 568評(píng)論 7 2
  • 1.CSS Sprite(雪碧圖|精靈圖)指什么? 有什么作用 CSS Sprite 是一種 CSS 圖像合并技術(shù)...
    饑人谷_沈夢(mèng)圓閱讀 274評(píng)論 0 0