css+html 總結+歸納


趁着清明的3天時間,我專門看了xhtml的一套視頻,雖然是xhtml但是也隱喻了很多經驗,鞏固了一下自己的基礎,我自己也寫了很多大大小小的東西,但是越寫我越發覺自己基礎的薄弱,果然沒錯!還是學到了一些我以前沒理解、不知道的一些概念和一些經驗之談,這里我寫一篇文章做一個總結。


一、首先W3C標准

結構、表現、動作  與  html、css、javascript相對應,它本意是結構表現分離,而且按照html規范編寫結構。

標簽方面:

-所有標簽都要小寫、關閉、並且合理嵌套,id不能重復

-標簽要有屬性,屬性必須有值,並且用“”表示

-img標簽不能忽略alt屬性

-表格標簽不適用height屬性

-盡量減少ifream的使用會影響瀏覽器響應速度,雖然在html5中也能使用ifream

內容模型:

-body、form、blockquote僅能包含塊級元素

-文本、圖像、鏈接等內聯元素不能直接暴露在body標簽中,必須用其他標簽包裹

-內聯元素不能包含塊級元素

其他方面:

-特殊字符用編碼表示

番外:

初學者的誤區:

1、div是萬能的!

2、table是丟人的!

3、為標准而標准

1、div嚴格意義上稱作容器,大家有一些頁面的裝飾可以通過嵌套div來實現,但是千萬不能整個頁面全都用div來編寫,很多標簽是有特定含義的,比如說h1~h3,p,strong等,在html5中就更加語義化了比如,footer、head、nav、article、section等標簽,還有很多標簽,我這里只說常用的一些標簽,而且如果整個頁面全都用div來寫不便於搜索引擎搜索到你的網站。

2、table並不丟人,只不過很少用而已,table是用來裝載數據的,所有標簽只要合理應用就不會丟人。

3、我們寫網站網頁其實說白了是為了客戶和用戶來看的,根據他們的需求我們學出對應的網站,我們強調頁面應該靈活編寫,不能死板的來。

二、你必須掌握的

1、塊狀元素和內聯元素

(1)塊狀元素

塊元素一般是其他元素的的容器元素,塊元素一般從新的一行開始,它可以容納文本、內聯元素和其他塊狀元素,通過width和height屬性可以設置其大小,常見的塊元素有 h標簽 和p標簽、div標簽

番外:form標簽也屬於塊標簽並且只能容納塊級標簽

(2)內聯元素

內聯元素非塊級元素。內聯元素只能容納文本或者其他內聯元素,不會獨占一行,width和height對其不起作用,常見的內聯元素有 a img span 等

番外: 這里我提一下 w3c為了讓開發人員更方便 增加了一個 inline-block 屬性值 ,包含塊狀元素的特點:能夠改變元素大小,也包含內聯元素的特點:大小只有盒內元素大小

2、盒子模型

下圖能代表所有,具體和深入請看各種大神技術博:

3、css頁面控制樣式方法

(1)行內式

(2)內嵌式

(3)鏈接式

(4)導入式

優先級:

就近元素,行內>內嵌>鏈接>導入,在國內經前端經常用的是 鏈接式。

4、常用選擇器

-標簽選擇器(div、p)

-id選擇器(#)

-類選擇器(.)

-通用選擇器(*)

-偽類選擇器(:link,:active,:hover,:visited)

優先級:

ID>類>標簽>通用

5、文本流

文本流講述的是一個概念性的東西,頁面內的元素是:從上至下、從左自右的順序進行排列的。

番外:

如何脫離文本流?

我們為了方便布局,通常使用浮動和定位的方式布局

6、命名方法

-駱駝命名法

-帕斯卡命名法

-匈牙利命名法

-或者全首字母大寫

命名規則:

頭:head/header

內容:content/container

尾:foot/footer

導航:nav/navigation

側欄: sidebar

三、css的控制能力

1、首行縮進

text-indent:2em; 

如果文字是英文,也是縮進2個漢字的寬度

知識點:

px 像素

rem 相對瀏覽器的單位

% 百分比單位

cm、mm 絕對單位

2、增強頁面文字靈活性

在body中設置文字大小font-size:62.5% 在需要設置12px的地方設置文字大小為1.2em以此類推14px相對1.4em

因為任意瀏覽器默認字體高度為16px   1em=16px

1px=1/16em   10px=10/16em=0.625em=0.625*1em=62.5%*1em

12px=62.5%*1.2em

14px=62.5%*1.4em

16px=62.5%*1.6em

番外:

ie下設置1.2em會比12px大,為什么? 怎么處理?

因為ie瀏覽器總是吧 62.5 小數點換算錯所以我們以后設置頁面大小直接設置為63%就可以兼容所有瀏覽器

3、浮動和定位

浮動:

float:left

float:right

定位:

position:absolute

position:relative

番外:

清除浮動:

-clear:both

-clear:left

-clear:right

浮動清除的並不是本元素的浮動,清除的是上級元素對於本元素的影響,我們可以講頁面整體分為三級

第一級是文本流 也就是頁面默認的顯示方式

第二級是浮動 它脫離文本流向上一層

第三級是定位 它是比浮動更高一級的為第三級

4、position

-absolute

-relative

-static

-Inherit

-Fixed

Absolute:絕對定位,絕對定位的元素的位置相對於最近的已定位祖先元素,如果元素沒有已定位的祖先元素,那么它的位置相對於最初的包含塊,絕對定位比較靈活如果你想,可以定位到瀏覽器的任意點

Relative: 相對定位,相對與父級盒子定位

static:默認的元素定位方式

inherit:繼承父級盒子的position屬性   這個沒多大用,如果我們要繼承的話,倒不如自己重寫一個省的自己再找一遍元素。

Fixed:元素固定在瀏覽器body的一個位置,瀏覽器上拉下拉都不會改變位置

番外:一般網站都是都是以浮動為主,定位為輔,你們可以看看現在的淘寶網站。

5、CSS Reset 

css樣式具有繼承和重置的作用

常用的CSS Reset

*{ margin:0,padding:0 }

body,div,p,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,form,input,textarea,th,td {padding:0; margin:0;}

table {border-collapse: collapse; border-spacing: 0;}

img {border: 0;}

ol,ul{list-style: none;}

h1,h2,h3,h4,h5,h6 {font-weight: normal; font-size: 100%;}

四:頁面調試/糾錯方法

1、頁面debug調試

2、排除法

3、設置背景法

番外:

網站的頁面的加載順序是按照文本流的順序加載,

我們編寫頁面優先考慮:

1、搜索引擎加載

2、便於瀏覽者觀察

3、頁面結構簡單整潔

最后

告訴大家一個調試神器:http://getf5.com/

以上是一些經驗之談和一些基礎的東西。
本文如果有描述錯誤的地方希望及時指出,我會積極改正。
生命不止、學習不止。 
越學習越發現自己不足的地方還有很多,我會繼續加油的!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM