web前端筆記2:CSS入門

學(xué)習(xí)和完成任務(wù)二的筆記
任務(wù)二:零基礎(chǔ)HTML及CSS編碼(一)

學(xué)習(xí)的資料

css介紹

  • CSS 是用來(lái)指定文檔顯示的芥映,讓頁(yè)面有不同的外觀洲尊。
    如何定義一個(gè)樣式,可以新建一個(gè)文件 strong.css 在文件中寫如下代碼
    strong {color: red;}奈偏。然后在你的html文件頭部加入一行 <link rel="stylesheet" href="style1.css">坞嘀。再打開網(wǎng)頁(yè)你會(huì)發(fā)現(xiàn)之前標(biāo)記 <strong> 的文字由原來(lái)的 黑色 加粗變?yōu)榱?紅色

  • 三種樣式寫法
    優(yōu)先級(jí)為 內(nèi)聯(lián)式 > 嵌入式 > 外部式

/*內(nèi)聯(lián)式惊来,直接寫在標(biāo)簽中*/
<span style="color:blue;">超酷的互聯(lián)網(wǎng)</span>
/*內(nèi)嵌式丽涩,寫在html文件中*/
<head>
    ......
    <style type="text/css">
        span{color:blue;}
    </style>
</head>
/*外聯(lián)式,寫在單獨(dú)文件中唁盏,如上段中介紹的用法*/
  • CSS的層疊與繼承
    CSS的來(lái)源有三種内狸,瀏覽器默認(rèn)樣式、用戶定義樣式和開發(fā)者定義樣式厘擂,而優(yōu)先級(jí)依次提高昆淡,也就是開發(fā)者定義的樣子優(yōu)先級(jí)最高會(huì)覆蓋前兩種定義的樣式。
    同時(shí)樣式之間也有繼承關(guān)系刽严,如 strong 就繼承自 p昂灵,子類樣式有更高的優(yōu)先級(jí)。
    上面所定義的如 strong 為一條規(guī)則舞萄,而 strong 被稱為標(biāo)簽選擇器( 也就是說(shuō)為某一標(biāo)簽設(shè)置樣式規(guī)則 )眨补。規(guī)則還可以有 classid 兩個(gè)屬性,對(duì)應(yīng)有類選擇器和id選擇器倒脓。這三個(gè)優(yōu)先級(jí)也是依次提高撑螺。
<p class="key" id="principal">`

類選擇器 在一個(gè)CSS樣式表中, 下面的規(guī)則將使所有class屬性等于key的元素文字顏色呈現(xiàn)綠色。(這些元素不一定都是<p>元素崎弃。)甘晤。一個(gè)標(biāo)簽可以有多個(gè)類用空格隔開

.key { color: green;}

id選擇器 下面的規(guī)則將使 id 等于 principal 的那個(gè)元素的文字變?yōu)榇煮w。同一html文件中 id必須唯一

#principal { font-weight: bolder;}

:before :after 在元素前面或者后面加元素

  • CSS偽類選擇器 是加在選擇器后面的用來(lái)指定元素狀態(tài)的關(guān)鍵字饲做。比如线婚, hover 會(huì)在鼠標(biāo)懸停在選中元素上時(shí)應(yīng)用相應(yīng)的樣式。
a:hover{color:red:} /*鼠標(biāo)移動(dòng)到鏈接上時(shí)鏈接文字變紅*/
  • 關(guān)系選擇器
選擇器 選擇的元素
A E 任何是元素A的后代元素E (后代節(jié)點(diǎn)指A的子節(jié)點(diǎn)盆均,子節(jié)點(diǎn)的子節(jié)點(diǎn)塞弊,以此類推)
A > E1 任何元素A的子元素
E:first-child 任何元素的第一個(gè)子元素E
B + E 任何元素B的下一個(gè)兄弟元素E
B ~ E B元素后面的擁有共同父元素的兄弟元素E

你可以任意組合以表達(dá)更復(fù)雜的關(guān)系。
你還可以使用星號(hào)(*)來(lái)表示”任意元素“。

  • 分組選擇器
h1,span{color:red;} /*使用這種寫法為多個(gè)選擇器設(shè)置相同規(guī)則*/
  • !important
    在分號(hào)前加 !important 提高樣式為最高優(yōu)先級(jí)
p{color:red!important}

常用屬性

屬性 代碼 說(shuō)明
字體 {font-family:"宋體";} -
字號(hào) {font-size:12px} -
顏色 {color:#ffffff} 顏色表示有多種:#ffffff,rgb{0,0,0},red
加粗 {font-weight:bold;} -
斜體 {font-style:italic;} -
下劃線 {text-decoration:underline;} -
刪除線 {text-decoration:line-through;} -
縮進(jìn) {text-indent:2em;} -
行間距 {line-height:3em;} -
字間距 {letter-spacing:20px;} -
對(duì)齊 {text-align:center;} -
背景色 {background:pink;} -
設(shè)置成塊 {display:block;} -
設(shè)置成內(nèi)聯(lián)元素 {display:inline;} -
設(shè)置成內(nèi)聯(lián)塊 {display:inline-block;} -
{width:30px;} -
{height:30px;} -

盒模型

  • 元素分類
    常用的塊狀元素 <div> <p> <h1>...<h6> <ol> <ul> <dl> <table> <address> <blockquote> <form>
    常用的內(nèi)聯(lián)元素 <a> <span> <br> <i> <em> <strong> <label> <q> <var> <cite> <code>
    常用的內(nèi)聯(lián)塊狀元素 <img> <input>

  • 塊級(jí)元素

a{display:block;} /*將a標(biāo)簽設(shè)置成塊級(jí)元素*/

每個(gè)塊級(jí)元素都從新的一行開始游沿,并且其后的元素也另起一行饰抒。元素的高度、寬度奏候、行高以及頂和底邊距都可設(shè)置循集。元素寬度在不設(shè)置的情況下,是它本身父容器的100%蔗草。

  • 內(nèi)聯(lián)元素
p{display:inline;} /*將p標(biāo)簽設(shè)置成內(nèi)聯(lián)元素*/

和其他元素都在一行上咒彤;元素的高度、寬度及頂部和底部邊距不可設(shè)置咒精;元素的寬度就是它包含的文字或圖片的寬度镶柱,不可改變。

  • 內(nèi)聯(lián)塊狀元素
display:inline-block;

和其他元素都在一行上模叙;元素的高度歇拆、寬度、行高以及頂和底邊距都可設(shè)置范咨。

  • 邊框
/* dashed(虛線)| dotted(點(diǎn)線)| solid(實(shí)線)故觅。 */
div{
    border-width:2px;
    border-style:solid;
    border-color:red;
}
/* 可簡(jiǎn)寫為如下 */
div{border:2px solid red;}
/* 可單獨(dú)設(shè)置某一邊框,使用如下屬性名 */
border-bottom border-top border-right border-left
  • 寬度高度
/*  */
div{
    width:200px;
    height: 20px;
}
  • 填充
    表示元素和邊框之間的距離渠啊。填充分成上右下左順時(shí)針寫输吏,如下
div{padding:20px 10px 15px 30px;}
/*  也可以分開寫,如下 */
div{
   padding-top:20px;
   padding-right:10px;
   padding-bottom:15px;
   padding-left:30px;
}
/* 如果上替蛉、右贯溅、下、左的填充都為10px;可以這么寫 */
div{padding:10px;}
/* 如果上下填充一樣為10px躲查,左右一樣為20px它浅,可以這么寫*/
div{padding:10px 20px;}
  • 邊界
    元素與其它元素之間的距離可以使用邊界。屬性名為 margin, 用法如同填充镣煮,將 padding 換成 margin

布局模型

  • 流動(dòng)模型
    塊狀元素都會(huì)在所處的包含元素內(nèi)自上而下按順序垂直延伸分布姐霍。內(nèi)聯(lián)元素都會(huì)在所處的包含元素內(nèi)從左到右水平分布顯示。
  • 浮動(dòng)模型
    設(shè)置元素浮動(dòng)就可以實(shí)現(xiàn)兩個(gè)塊狀元素并排顯示典唇。
/* 這樣設(shè)置元素浮動(dòng) */
div1{float:left;}
  • 層模型
    層模型有三種形式:
    1邮弹、絕對(duì)定位(position: absolute)
    設(shè)置position:absolute(表示絕對(duì)定位),然后使用left蚓聘、right、top盟劫、bottom屬性相對(duì)于其最接近的一個(gè)具有定位屬性的父包含塊進(jìn)行絕對(duì)定位夜牡。如果不存在這樣的包含塊,則相對(duì)于body元素,即相對(duì)于瀏覽器窗口塘装。
div{
  position:absolute;
  top:20px;
  right:100px;
  bottom:30px;
  left:50px;
}

2急迂、相對(duì)定位(position: relative)
設(shè)置position:relative(表示相對(duì)定位),它通過(guò)left蹦肴、right僚碎、top、bottom屬性確定元素在正常文檔流中的偏移位置阴幌。相對(duì)定位完成的過(guò)程是首先按static(float)方式生成一個(gè)元素(并且元素像層一樣浮動(dòng)了起來(lái))勺阐,然后相對(duì)于以前的位置移動(dòng),移動(dòng)的方向和幅度由left矛双、right渊抽、top、bottom屬性確定议忽,偏移前的位置保留不動(dòng)懒闷。
3、固定定位(position: fixed)
與absolute定位類型類似栈幸,但它的相對(duì)移動(dòng)的坐標(biāo)是視圖(屏幕內(nèi)的網(wǎng)頁(yè)窗口)本身愤估。與background-attachment:fixed?屬性功能相同。以下代碼可以實(shí)現(xiàn)相對(duì)于瀏覽器視圖向右移動(dòng)100px速址,向下移動(dòng)50px玩焰。并且拖動(dòng)滾動(dòng)條時(shí)位置固定不變。

#div1{
    position:fixed;
    left:100px;
    top:50px;
}

水平居中設(shè)置

  1. 行內(nèi)元素
    如果被設(shè)置元素為文本壳繁、圖片等行內(nèi)元素時(shí)震捣,水平居中是通過(guò)給父元素設(shè)置 text-align:center 來(lái)實(shí)現(xiàn)的。如下代碼:
div.txtCenter{ text-align:center; }
  1. 定寬塊狀元素
    滿足定寬和塊狀兩個(gè)條件的元素是可以通過(guò)設(shè)置“左右margin”值為“auto”來(lái)實(shí)現(xiàn)居中的闹炉。
margin:20px auto;
  1. 不定寬塊狀元素
    有三種方式蒿赢。方式一如下
/* 第一步:為需要設(shè)置的居中的元素外面加入一個(gè) table 標(biāo)簽 ( 包括 <tbody>、<tr>渣触、<td> )羡棵。
第二步:為這個(gè) table 設(shè)置“左右 margin 居中”(這個(gè)和定寬塊狀元素的方法一樣)。 */
<div>
<table margin:0px auto>
<tbody>
  <tr>
    <td>
      <ul>
        <li><a href="#">1</a></li>
        <li><a href="#">2</a></li>
        <li><a href="#">3</a></li>
       </ul>
      </td>
    </tr>
</tbody>
</table>
</div>

第二種方法:改變塊級(jí)元素的 display 為 inline 類型嗅钻,然后使用 text-align:center 來(lái)實(shí)現(xiàn)居中效果皂冰。
方法三:通過(guò)給父元素設(shè)置 float,然后給父元素設(shè)置 position:relative 和 left:50%养篓,子元素設(shè)置 position:relative 和 left:-50% 來(lái)實(shí)現(xiàn)水平居中秃流。

垂直居中設(shè)置

  1. 父元素高度確定的單行文本的豎直居中的方法是通過(guò)設(shè)置父元素的 height 和 line-height 高度一致來(lái)實(shí)現(xiàn)的。
.wrap h2{
    margin:0;
    height:100px;
    line-height:100px;
    background:#ccc;
}
  1. 父元素高度確定的多行文本(方法一):使用插入 table (包括tbody柳弄、tr舶胀、td)標(biāo)簽,同時(shí)設(shè)置 vertical-align:middle。
    說(shuō)到豎直居中嚣伐,css 中有一個(gè)用于豎直居中的屬性 vertical-align糖赔,但這個(gè)樣式只有在父元素為 td 或 th 時(shí),才會(huì)生效轩端。所以將在居中的元素放在td中放典,將td設(shè)置一個(gè)高度,再設(shè)置 vertical-align:middle(默認(rèn)已為middle)基茵。
  2. 父元素高度確定的多行文本(方法二):在 chrome奋构、firefox 及 IE8 以上的瀏覽器下可以設(shè)置塊級(jí)元素的 display 為 table-cell,激活 vertical-align 屬性耿导,但注意 IE6声怔、7 并不支持這個(gè)樣式。
.container{
    height:300px;
    background:#ccc;
    display:table-cell;/*IE8以上及Chrome舱呻、Firefox*/
    vertical-align:middle;/*IE8以上及Chrome醋火、Firefox*/
}

隱性改變display類型

有一個(gè)有趣的現(xiàn)象就是當(dāng)為元素(不論之前是什么類型元素,display:none 除外)設(shè)置以下 2 個(gè)句之一:
position : absolute
float : left 或 float:right
元素會(huì)自動(dòng)變?yōu)橐?display:inline-block 的方式顯示箱吕,當(dāng)然就可以設(shè)置元素的 width 和 height 了且默認(rèn)寬度不占滿父元素芥驳。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市茬高,隨后出現(xiàn)的幾起案子兆旬,更是在濱河造成了極大的恐慌,老刑警劉巖怎栽,帶你破解...
    沈念sama閱讀 223,002評(píng)論 6 519
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件丽猬,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡熏瞄,警方通過(guò)查閱死者的電腦和手機(jī)脚祟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,357評(píng)論 3 400
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)强饮,“玉大人由桌,你說(shuō)我怎么就攤上這事∮史幔” “怎么了行您?”我有些...
    開封第一講書人閱讀 169,787評(píng)論 0 365
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)剪廉。 經(jīng)常有香客問(wèn)我娃循,道長(zhǎng),這世上最難降的妖魔是什么斗蒋? 我笑而不...
    開封第一講書人閱讀 60,237評(píng)論 1 300
  • 正文 為了忘掉前任淮野,我火速辦了婚禮捧书,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘骤星。我一直安慰自己,他們只是感情好爆哑,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,237評(píng)論 6 398
  • 文/花漫 我一把揭開白布洞难。 她就那樣靜靜地躺著,像睡著了一般揭朝。 火紅的嫁衣襯著肌膚如雪队贱。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,821評(píng)論 1 314
  • 那天潭袱,我揣著相機(jī)與錄音柱嫌,去河邊找鬼。 笑死屯换,一個(gè)胖子當(dāng)著我的面吹牛编丘,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播彤悔,決...
    沈念sama閱讀 41,236評(píng)論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼嘉抓,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了晕窑?” 一聲冷哼從身側(cè)響起抑片,我...
    開封第一講書人閱讀 40,196評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎杨赤,沒想到半個(gè)月后敞斋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,716評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡疾牲,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,794評(píng)論 3 343
  • 正文 我和宋清朗相戀三年植捎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片说敏。...
    茶點(diǎn)故事閱讀 40,928評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡鸥跟,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出盔沫,到底是詐尸還是另有隱情医咨,我是刑警寧澤,帶...
    沈念sama閱讀 36,583評(píng)論 5 351
  • 正文 年R本政府宣布架诞,位于F島的核電站拟淮,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏谴忧。R本人自食惡果不足惜很泊,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,264評(píng)論 3 336
  • 文/蒙蒙 一角虫、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧委造,春花似錦戳鹅、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,755評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至爬虱,卻和暖如春隶债,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背跑筝。 一陣腳步聲響...
    開封第一講書人閱讀 33,869評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工死讹, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人曲梗。 一個(gè)月前我還...
    沈念sama閱讀 49,378評(píng)論 3 379
  • 正文 我出身青樓赞警,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親稀并。 傳聞我的和親對(duì)象是個(gè)殘疾皇子仅颇,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,937評(píng)論 2 361

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

  • 問(wèn)答題47 /72 常見瀏覽器兼容性問(wèn)題與解決方案? 參考答案 (1)瀏覽器兼容問(wèn)題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,762評(píng)論 1 92
  • 本文主要是起筆記的作用碘举,內(nèi)容來(lái)自慕課網(wǎng). 認(rèn)識(shí)CSS樣式 CSS全稱為“層疊樣式表 (Cascading Styl...
    0o凍僵的企鵝o0閱讀 2,652評(píng)論 0 30
  • 一 外部式css樣式 (也可稱為外聯(lián)式)就是把css代碼寫一個(gè)單獨(dú)的外部文件中忘瓦,這個(gè)css樣式文件以“.css...
    KunMitnic閱讀 944評(píng)論 0 1
  • CSS格式化排版 1、字體 我們可以使用css樣式為網(wǎng)頁(yè)中的文字設(shè)置字體引颈、字號(hào)耕皮、顏色等樣式屬性。下面我們來(lái)看一個(gè)例...
    張文靖同學(xué)閱讀 1,291評(píng)論 0 3
  • 高考季,各大V都在散播正能量售滤。高考結(jié)果不重要罚拟,人生才剛開始;我當(dāng)年高考落榜完箩,現(xiàn)在依舊精彩赐俗;古往今來(lái)很多成功人士都曾...
    兔子大人妙不可言閱讀 4,445評(píng)論 0 3