HTML與CSS筆記-1

HTML

圖片語義化

1.alt屬性與tittle屬性。

2.figure元素與figcaption元素望浩。

<figure>
    <img src="" alt="" title="">
    <figcaption></figcaption>
</figure>

表單分組

fieldset標簽瀑晒、legend標簽

<fieldset>
    <legend></legend>
    <input >
</fieldset>
優(yōu)點:1.增強表單語義
     2.可定義fieldset元素的disabled屬性來禁用整個組的表單元素

其他

  • br:只適合用于p標簽內(nèi)換行
  • del標簽清蚀、ins標簽:定義刪除和更新后的文本
  • img標簽:
    • 圖片作為HTML一部分泡孩,想被搜索引擎識別,應使用img
    • 反之粟誓,應使用背景圖片

CSS

CSS單位

  • 絕對單位:cm\mm\in\pt\pc 多用于平面印刷
  • 相對單位:
    • px
    • % :
      • width height font-size相對于父元素『相同屬性』的值來計算
      • line-height相對于父元素font-size值來計算
      • vertical-align相對于當前元素的line-height值來計算
    • em :
      • 當前元素的font-size的px值奏寨,如果當前元素font-size未定義,會繼承父元素
      • 瀏覽器默認font-size為16px
      • 小技巧:首行縮進text-indent: 2em;
    • rem:

CSS特性

  • 具有繼承性的屬性有三大類
    1. 文本相關:font-family font-size font-style font-weight font
      line-height texxt-align text-indent word-apacing
    2. 列表相關屬性:list-sytle-image list-sytle-position list-sytle-type
      list-style
    3. 顏色:color
      • a標簽默認顏色樣式優(yōu)先級更高鹰服,不會繼承父元素顏色樣式

CSS優(yōu)先級

應用方式?jīng)_突

行內(nèi)樣式 > (內(nèi)部樣式 = 外部樣式)

繼承方式?jīng)_突

最近的祖元素獲勝

指定樣式?jīng)_突

樣式權值高獲勝病瞳,權值只針對指定樣式,不用于繼承
  • 通配符 0
  • 偽元素 元素選擇器 1
    • 偽元素只有四個:
      • ::before 悲酷、::after 套菜、 ::first-letter 、::first-line
  • class選擇器 偽類 屬性選擇器 10
  • id選擇器 100
  • 行內(nèi)樣式 1000

繼承樣式和指定樣式?jīng)_突

指定樣式獲勝

!important

會覆蓋任何其他樣式

CSS選擇器

  • 層次選擇器
    • M N 后代選擇器舔涎,選擇M元素內(nèi)部后代所有N元素
    • M>N 子代選擇器笼踩,選擇M元素內(nèi)部子代所有N元素
    • M~N 兄弟選擇器,選擇M元素后所有同級N元素
    • M+N 相鄰選擇器亡嫌,選擇M元素相鄰的下一個元素N
      • 技巧:li元素之間添加一橫線
        li+li{border-top:1px solid red;}
        /*最后一個li元素沒有相鄰,沒有可選去的*/
        

CSS規(guī)范

CSS命名規(guī)范(適用于開發(fā)階段掘而,發(fā)布階段css文件都合并壓縮)

  1. CSS文件命名
    • reset.css重置樣式挟冠,清除默認樣式
    • global.css全局樣式,定義公共袍睡、基礎樣式(導航知染、底部、全局字體斑胜、文字顏色)
    • themes.css主題樣式
    • module.css模塊樣式
    • masster.css模板樣式控淡,用于母版頁的樣式
    • columns.css專欄樣式
    • forms.css表單樣式
    • mend.css補丁樣式
    • print.css 打印樣式
  2. id和class命名
    • 避免class命名重復嫌吠,命名取父元素class名為前綴
    • 頁面常見部分命名規(guī)范

網(wǎng)頁主體部分命名

網(wǎng)頁部分 命名
最外層 wrapper
頭部 header
內(nèi)容 content
側欄 sidebar
欄目 column
熱點 hot
新聞 news
下載 download
標志 logo
導航條 nav
主體 main
左側 main-left
右側 main-right
底部 footer
友情鏈接 friendlink
加入我們 joinus
版權 copyright
服務 service
登錄 login
注冊 register

網(wǎng)頁細節(jié)部分命名

導航命名

網(wǎng)頁部分 命名
主導航 main-nav
子導航 sub-nav
邊導航 side-nav
左導航 leftside-nav
右導航 rightside-nav
頂導航 top-nav

其他

網(wǎng)頁部分 命名
菜單 menu
子菜單 submenu
標題 title
摘要 summary
登錄條 loginbar
搜索 search
標簽頁 tab
廣告 banner
小技巧 tips
圖標 icon
法律聲明 siteinfolegal
網(wǎng)站地圖 sitemap
首頁 homepage
子頁 subpage
合作伙伴 parter
幫助 help
指南 guide
滾動 scroll
提示信息 msg
投票 vote
相關文章 related
文章列表 list

書寫規(guī)范

CSS屬性書寫順序
1.影響文檔布局屬性 display; position; float; clear; ...
2.自身盒模型屬性 width; height; padding; margin; border; overflow; ...
3.文本屬性 font; line-height; text-align; text-indent; vertical-align;...
4.裝飾屬性 color; background-color; opacity; cursor;...
5.其他屬性 content; list-style; quotes;...
<!-- 例子 -->

#main {
    /*影響文檔流屬性*/
    display             : inline-block    ;
    position            : absolute        ;
    top                 : 0               ;
    left                : 0               ;

    /*盒子模型屬性*/
    width               : 100px           ;
    height              : 100px           ;
    border              : 1px solid gray  ;

    /*文本屬性*/
    font-size           : 15px            ;
    font-weight         : bold            ;
    text-indent         : 2em             ;

    /*裝飾屬性*/
    color               : #000            ;
    background-color    : #fff            ;

    /*其他屬性*/
    cursor              : pointer         ;
}

功能代碼

具有某一特殊功能的代碼塊應該集中放置一起
<!-- 舉例 -->
#main {

    /*單行文本居中方法需要使用2個屬性實現(xiàn),就將其寫在一起*/
    height              : 50px              ;
    line-height         : 50px              ;

}

注釋規(guī)范

  1. 頂部注釋
/*
    *@sescription:  文件說明
    *@author     :  作者
    *@update     :  更新時間
*/
  1. 模塊注釋
/*導航部分掺炭,開始*/
...
/*導航部分辫诅,結束*/
  1. 防止代碼壓縮刪除注釋,將需要保留的注釋加 ! 符號
/*! 這條注釋不會被壓縮刪掉 */

CSS reset

重置瀏覽器默認的CSS樣式
  • 避免使用*{...}涧狮,性能底下炕矮,需更具個人具體需求定義。

CSS盒子模型

  1. 內(nèi)容區(qū)
    • width
    • height
    • overflow
  2. 內(nèi)邊距
    • padding-top
    • padding-right
    • padding-bottom
    • padding-left
  3. 邊框
    • border-width
    • border-style
    • border-color
  4. 外邊距
    • margin-top
    • margin-right
    • margin-bottom
    • margin-left
    • margin可指定負數(shù)者冤,盒子向負值相反方向移動

border

border:0border:none差異

  • border : 0
    • 0px雖然看不見肤视,但是瀏覽器還是會渲染,占內(nèi)存
  • border : none
    • 不占內(nèi)存

padding

margin

外邊距疊加

初衷是為了對文章更好排班涉枫,第一段外邊距顯示和其他段落外邊距相等邢滑。
  1. 同級元素
    • 會發(fā)生合并
  2. 父子元素
    • 當父元素沒有padding、border把外邊距分隔開愿汰,父元素和子元素相鄰上下外邊距會合并
  3. 空元素
    • 自身沒有padding殊鞭、border把外邊距分隔開,上下外邊距會疊加尼桶,再碰到其他元素外邊距再次疊加

負margin

  1. margin-top操灿、margin-left為負時,當前元素拉向指定方向
  2. margin-botton泵督、marin-right為負時趾盐,后續(xù)元素拉向指定方向

負margin使用技巧

  • 圖片文字居中
    • vertical-align : text-bootom
    • img{margin: 0 3px -3px 0 ;}
  • 自適應兩列布局
<!-- HTML -->

   <div class="content"><p>主體,寬度自適應</p></div>
   <div class="sidebar"><p>側邊欄小腊,固定寬度</p></div>

<!-- CSS  -->
   div{
       float: left;
   }

   .content{
       width: 100%;
       /* 將sidebar向左拉sidebar自身寬度的舉例*/
       /*否則sidebar會被content的width百分百擠到下一行 */
       margin-right: -200px;
       background-color: green;
   }
   .content > p{
       /* 防止瀏覽器寬度不足救鲤,兩列發(fā)生重疊 */
       /* siderbar自身寬度+兩列間距10px */
       margin-right: 210px;
   }

   .sidebar{
       width: 200px;
       background-color: red;
   }
  • 元素垂直居中
    1. 父元素position: relative;
    2. 需垂直居中元素
      • position: absolute;
      • top: 50%;
      • left: 50%;
      • margin-top: /* height 的一半 */
      • margin-left: /* width 的一半 */
  • tab選項標簽
    • margin-top: -1px; 解決tab切換問題。

overflow

display

inline行內(nèi)元素

無法定義height秩冈、width,
無法定義margin-top本缠、margin-bottom.
不能容納block塊元素

inline-block行內(nèi)塊元素

可定義height、width
可與其他inline行內(nèi)元素同行

常見inline-block元素

  • img
  • input

display: none ;

visibility: hidden;的區(qū)別

  • display: none隱藏入问,不占據(jù)原來位置
  • visibility: hidden隱藏丹锹,原來位置保留

display: table-cell ;

可以讓元素以表格單元形式呈現(xiàn)
  1. 大小不固定的圖片垂直居中于元素
父元素{
    display: table-cell;
    vertical-align: middle;
    text-align: center;
}
子元素{
    vertical-align: middle;
}
  1. 等高布局
  2. 自動平均劃分元素
父元素{display: tabel ;}
子元素{display: table-cell ;}

去除inline-block元素間距

父元素{font-size: 0 ;}
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市芬失,隨后出現(xiàn)的幾起案子楣黍,更是在濱河造成了極大的恐慌,老刑警劉巖棱烂,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件租漂,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機哩治,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進店門秃踩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人业筏,你說我怎么就攤上這事憔杨。” “怎么了驾孔?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵芍秆,是天一觀的道長。 經(jīng)常有香客問我翠勉,道長妖啥,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任对碌,我火速辦了婚禮荆虱,結果婚禮上,老公的妹妹穿的比我還像新娘朽们。我一直安慰自己怀读,他們只是感情好,可當我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布骑脱。 她就那樣靜靜地躺著菜枷,像睡著了一般。 火紅的嫁衣襯著肌膚如雪叁丧。 梳的紋絲不亂的頭發(fā)上啤誊,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天,我揣著相機與錄音拥娄,去河邊找鬼蚊锹。 笑死,一個胖子當著我的面吹牛稚瘾,可吹牛的內(nèi)容都是我干的牡昆。 我是一名探鬼主播,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼摊欠,長吁一口氣:“原來是場噩夢啊……” “哼丢烘!你這毒婦竟也來了?” 一聲冷哼從身側響起凄硼,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤铅协,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后摊沉,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡痒给,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年说墨,在試婚紗的時候發(fā)現(xiàn)自己被綠了骏全。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡尼斧,死狀恐怖姜贡,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情棺棵,我是刑警寧澤楼咳,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站烛恤,受9級特大地震影響母怜,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜缚柏,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一苹熏、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧币喧,春花似錦轨域、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至史翘,卻和暖如春枉长,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背恶座。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工搀暑, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人跨琳。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓自点,卻偏偏與公主長得像,于是被迫代替她去往敵國和親脉让。 傳聞我的和親對象是個殘疾皇子桂敛,可洞房花燭夜當晚...
    茶點故事閱讀 44,843評論 2 354

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

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽默認的外補...
    _Yfling閱讀 13,751評論 1 92
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5溅潜? 答:HTML5是最新的HTML標準术唬。 注意:講述HT...
    kismetajun閱讀 27,485評論 1 45
  • 本文為閱讀《Head First HTML 與 CSS》的css部分的讀書筆記,方便回顧書上的知識滚澜,另一篇為Hea...
    兼續(xù)閱讀 1,827評論 0 17
  • HTML 5 HTML5概述 因特網(wǎng)上的信息是以網(wǎng)頁的形式展示給用戶的粗仓,因此網(wǎng)頁是網(wǎng)絡信息傳遞的載體。網(wǎng)頁文件是用...
    阿啊阿吖丁閱讀 3,887評論 0 0
  • 1.CSS基本概念 1.1 CSS的定義 CSS(Cascading Style Sheets)層疊樣式表,主要用...
    寥寥十一閱讀 1,833評論 0 6