職業方向規劃定位:javascript
web
前端開發的前景展望:css
IT
行業企業需求最多的人才html5
搶佔移動端的市場web
開發成爲企業的寵兒和核心web
職業發展目標:html
第1、梳理知識架構前端
HTML
css
(層疊樣式表)js
ps
切圖第2、分解目標(起步階段、提高階段、成型階段)html5
起步階段:java
提高階段:jquery
HTML
基本標籤和屬性css
的基本語法和使用html
+css
+js
開始系統項目的開發成型階段:git
DIV
+CCS
佈局css
樣式表控制html
標籤js
製做動態網站的效果認識HTML:github
html
不是一種編程語言,是一種標誌語言html
使用標籤來描述網頁html
結構:web
1
2
3
4
|
<html>
<head></head>
<body></body>
</html>
|
<br>
<hr>
<meta>
<img>
<input..>
<option..>
<link>
HTML 基本標籤的講解:
<html>
<head>
<body>
標籤<h1>
—-<h6>
僅僅用於標題文本,不要爲了產生粗體文本使用它們<p>
標籤 段落標籤<strong><b>
標籤
都會讓文字產生加粗效果
<strong>
用於強調文本,強度更深,表示重要文本—>用於SEO
優化<b>
只是視覺加粗效果—>單純爲了產生加粗<em>
<i>
標籤
em
用於強調文本i
只是視覺斜體效果<strong>
比<em>
強調更強 
; —->空格>
; —>大於號<
;—>小於號"
;—>引號©
;–>版權號HTMl
基本標籤:
span
標籤
<pre>
標籤
<a>
標籤—>他有一個必不可少的屬性 href
target
屬性:_self
(在原來頁面打開)_blank
(新窗口打開)_top
(打開時忽略全部的框架)_parent
(在父窗口中打開)建立錨點和錨連接
<a name="錨點名稱"></a>
<a href="#錨點名稱">內容</a>
marquee
標籤
1
|
<marquee direction="down" loop="4" onmouseover=this.stop() onmouseout=this.start()></marquee>
|
direction
表示滾動方向,取值有(left,right,up,down,默認left)loop
表示滾動循環的次數,默認爲無限循環
1
|
onmouseover=this.stop() onmouseover=this.start() scrollamout="1"(滾動速度)
|
圖片標籤與路徑:
jpg
png
gif
Gif
(只支持全透明)Jpeg
/jpg
Png
半/全透明都支持圖片標籤寫法 :
<img src="" alt="" width="" height="" />
圖片四要素:
src=""
圖片路徑alt=""
圖片含義width=""
圖片寬度 和圖片大小保持一致height=""
圖片高度 和圖片大小保持一致title=""
路徑知識:
相對路徑、絕對路徑:
<img src="" …… align="" />
align
屬性–設置圖片與後面文字的位置關係
值–top
、bottom
、middle
、absmiddle
、left
、right
在靜態頁面中:
/
開頭表示根目錄;
./
表示當前目錄;(斜畫線前面一個點)
../
上級目錄;(斜畫線前面兩個點)
直接用文件名不帶/也表示同一目錄
<ul>
無序列表
1
2
3
4
5
|
<ul>
<li></li>
<li></li>
<li></li>
</ul>
|
<ol>
標籤。每一個列表項始於 <li>
標籤。
1
2
3
4
5
|
<ol>
<li>內容一</li>
<li>內容二</li>
<li>內容三</li>
</ol>
|
列表符號
無序列表-列表符號:
type="circle"
空心圓 type=「disc」
實心圓 默認值 type="square"
方塊符有序列表-列表符號
type="A"
A B C Dtype="a"
a b c dtype="1"
1 2 3 4 默認值type=」I」 I II III type=」i」 i ii iii列表嵌套
無序列表-嵌套
1
2
3
4
5
6
7
8
9
|
<ul>
<li>柚子
<ul>
<li>沙田柚</li>
<li>蜜柚</li>
</ul>
</li>
<li>荔枝</li>
<li>蘋果</li></ul>
|
1
2
3
4
5
6
7
8
9
|
<ol>
<li>茶
<ul>
<li>紅茶</li>
<li>綠茶</li>
</ul>
</li>
<li>果汁</li>
<li>牛奶</li></ol>
|
<dl>
標籤開始。每一個定義列表項以 <dt>
開始。每一個自定義列表項的定義以 <dd>
開始。
1
2
3
4
5
6
|
<dl>
<dt>pc網頁製做</dt>
<dd>學習DIV+CSS JS JQ 項目實戰</dd>
<dt>手機網頁製做</dt>
<dd>手機網頁製做實戰</dd>
</dl>
|
dd
是對dt
的解釋
< dl>< /dl>
用來建立一個普通的列表,< dt>< /dt>
用來建立列表中的上層項目,< dd>< /dd>
用來建立列表中最下層項目,< dt>< /dt>
和< dd>< /dd>
都必須放在< dl>< /dl>
標誌對之間。
1
2
3
4
5
6
7
8
9
10
|
<dl>
<dt>中國城市</dt>
<dd>北京 </dd>
<dd>上海 </dd>
<dd>廣州 </dd>
<dt>美國城市</dt>
<dd>華盛頓 </dd>
<dd>芝加哥 </dd>
<dd>紐約 </dd>
</dl>
|
dl
是definition list
的縮寫dt
是definition title
的縮寫dd
是definition description
的縮寫list-style
屬性具備三個屬性份量:list-style-position
:設置列表項圖標的位置,位於文本內或者文本外list-style-type
: 設置列表項圖標的類型list-style-image
:使用圖像設置列表項圖標表單標籤:
<form>
表單標籤
<form>
表單是一個包含表單元素的區域,包括起來的都是表單的內容
1
2
3
|
<form>
<input type="text"/>
</form>
|
HTML標籤 - Action
和確認按鈕:
1
2
3
4
|
<form action="html.do" method="get">
username: <input type="text" name="user" />
<input type="submit" value="提 交" />
</form>
|
HTML
標籤 - 隱藏域隱藏標籤:
隱藏域在頁面中對於用戶是不可見的,在表單中插入隱藏域的目的在於收集或發送信息,以利於被處理表單的程序所使用。瀏覽者單擊發送按鈕發送表單的時候,隱藏域的信息也被一塊兒發送到服務器
1
2
3
|
<form>
<input type="hidden" name="hid" value="value">
</form>
|
<input>
標籤的掌握
經常使用type
類型:
<input type="" name="" value="" />
type="text"
單行文本輸入框type="password"
密碼(maxlength=""
)type="radio"
單項選擇(checked="checked"
)type="checkbox"
多項選擇type="button"
按鈕type="submit"
提交 type="image"
圖片提交type="file"
上傳文件type="reset"
重置type="hidden"
隱藏關於表單中的設置默認值:
1
2
3
|
<input type="text" name="" value="今天心情不錯" />
<input type="radio" name="" value="" checked="checked">
<input type="checkbox" name="" value="" checked="checked">
|
1
2
3
4
|
<select name="" >
<option value=""></option>
<option value="" selected="selected"></option>
<select>
|
textarea
沒有默認值
<label>
標籤的使用
<label></label>
label
元素不會向用戶呈現任何特殊效果。label
元素內點擊文本,就會觸發此控件。<label>
標籤的for
屬性應當與相關元素的 id
屬性相同。
例子:(重要—註冊表單–用戶體驗–必作)
1
2
3
|
<p>單向選擇</p>
<label for="male">男:</label><input type="radio" name="sex" id="male"/>
<label for="nv">女:</label><input type="radio" name="sex"checked="check"/>
|
<textarea>
文本域標籤<textarea>
標籤:<textarea></textarea>
是文本域標籤,能夠在其中插入一段文字內容,它有兩個經常使用屬性rows
和cols
注意:
rows
表示這個文本域有多少行cols
表示這個文本域有多少列除了這兩個屬性它還有readonly
(只讀,文本域的內容沒法改變,至關於協議)和title
(鼠標放上提示)
<select>
標籤的掌握
<select>
表單數據提交給服務器時包括 name
屬性
1
2
3
4
5
6
|
<form>
<select name="" id="">
<option value="1">1月</option>
<option value="2">2月</option>
</select>
</form>
|
經常使用到的屬性:disabled=「disabled」 name="sel" size="2"
<table>
表格標籤<table>
表格標籤:<table>
是表格標籤,能夠用它定義一個表格。
1
2
3
4
5
6
|
<table border="1">
<tr>
<td>姓名</td>
<td>性別</td>
</tr>
</table>
|
注意:<table>
的border
屬性不能少
<tr>
<td>
標籤的使用
<tr>
行標籤:
<tr>
能夠定義表格中的一行,一個<tr></tr>
表示一行。
1
2
3
4
5
6
7
8
9
10
11
|
<table border="1">
<tr>
<td>姓名</td>
<td>性別</td>
</tr>
<tr>
<td>姓名</td>
<td>性別</td>
</tr>
</table>
|
<td>
單元格標籤:
<td>
能夠定義表格中的一個單元格,<td></td>
表示一個單元格。
1
2
3
4
5
6
7
|
<table border="1">
<tr>
<td >姓名</td>
<td>性別</td>
<td>愛好</td>
</tr>
</table>
|
border-collapse
屬性設置是否將表格邊框摺疊爲單一邊框:border-collapse:collapse
;colspan
左右合併rowspan
上下合併第一部分總結:
head
meta
style
scrpit.
..img
div
span
a
ul
li
…css
改變它meta
link
base
img
input
br
hr
雙標籤:html
head
body
div
a
p
span
..ul
li
ol
dl
….
經常使用可視化標籤
div
href
*屬性:設置跳轉的網頁地址target
屬性:設置跳轉的目標a
標籤img
src
*屬性用來設置圖片的url數據alt
提供給搜索引擎搜索的width
height
table
caption
tr
td (th)
rowspan
)colspan
)HTML部分導圖總結
css
基礎知識:
css
樣式表的定義css
:(Cascading Style Sheets)層疊樣式表;-head
區域style
標籤裏面
link
調用css
內的註釋:/*
註釋內容*
/css
樣式表的語法
CSS
規則由兩個主要的部分構成:要添加樣式的盒子名或者標籤名、和要添加的樣式。
盒子名或者標籤名{屬性:值;}
CSS中幾種顏色的表示方法
aqua
, black
, blue
, fuchsia
, gray
, green
, lime
, maroon
, navy
,olive
, orange,
purple
, red
, silver
, teal
, white
, and yellow
用十六進制的顏色值表示(紅、綠、藍)
#FF0000
或者#F00
用rgb(r,g,b)函數表示
rgb(255,255,0)
用hsl(Hue,Saturation,Lightness)函數表示(色調、飽和度、亮度)
hsl(120,100%,100%)
,色調0表明紅色,120
表明綠色,240
表明用rgba(r,g,b,a)
函數表示
a
表示的是改顏色的透明度,取值範圍是0~1
,其中0
表明徹底透明用hsla(Hue,Saturation,Lightness,alpha)函數表示
1
2
3
4
5
6
7
8
9
|
<div style="position:absolute;top:0px">
<div style="">background-color:gray</div>
<div style="">background-color:#F00</div>
<div style="">background-color:#ffff00</div>
<div style="">background-color:rgb(255,0,255)</div>
<div style="">background-color:hsl(120,80%,50%)</div>
<div style="">background-color:rgba(255,0,255,0.5)</div>
<div style="">background-color:hsla(120,80%,50%,0.5)</div>
</div>
|
<style></style>
標籤在文檔<head></head>
裏面定義內部樣式表
1
2
3
4
5
|
<head>
<style type="text/css" >
p{color:red;}
</style>
</head>
|
head
標籤裏面)當樣式須要應用於不少頁面時,就須要用到外部樣式表,首先須要建立一個css
文件,而後引用到咱們的頁面中。
Link
樣式表式: <link rel=」stylesheet」 type=」text/css」 href=」my.css」(href表示路徑)>
Html
式: <style type="text/css">@import url("css.css");></style>
內聯樣式表(優先級高)
寫在標籤裏面的樣式
如:<p style="color:red;"></p>
表示給p
標籤裏面的文字顏色設置爲紅色
區別:外鏈樣式與導入樣式
link
標籤是屬於xhtml
範疇,而@import
則是css2.1
中特有的。link
標籤除了能夠加載CSS
外,還能夠作不少其它的事情,好比定義RSS
,定義rel
鏈接屬性等,@import
就只能加載CSS
了。
加載的順序的區別,link
加載的css
時,是一種並行(沒有嘗試是不是這樣)加載CSS
方式,而@impor
則在整個頁面加載完成後才加載。
兼容性的區別,因@import``CSS2.1
才特有的,因此對於不兼容CSS2.1
的瀏覽器來講,無效。
在樣式控制上(好比動態改變網頁的佈局時,使用JavaScript
操做DOM
)的區別,此時@import
就無能爲力了。
CSS
樣式的優先級總結來講,就是——就近原則(離被設置元素越近優先級別越高):
內聯樣式表(標籤內部)
> 嵌入樣式表(當前文件中)
> 外部樣式表(外部文件中)
權值不一樣時,瀏覽器是根據權值來判斷使用哪一種css
樣式的,哪一種樣式權值高就使用哪一種樣式
層疊優先級是:
瀏覽器缺省
< 外部樣式表
< 內部樣式表
< 內聯樣式
類選擇器
< 類派生選擇器
<ID選擇器
< ID派生選擇器
派生選擇器之前叫上下文選擇器,因此完整的層疊優先級是:
瀏覽器缺省
<外部樣式表
< 外部樣式表類選擇器
< 外部樣式表類派生選擇器
< 外部樣式表ID選擇器
< 外部樣式表ID派生選擇器
< 內部樣式表
< 內部樣式表類選擇器
< 內部樣式表類派生選擇器
< 內部樣式表ID選擇器
< 內部樣式表ID派生選擇器
< 內聯樣式
…共12
個優先級另外,若是同一個元素在沒有其餘樣式的做用影響下,其Class
定義了多個並以空格分開,其優先級順序爲:
class
,後定義的優先(即近者優先),加上!important
者最優先!css
選擇器:
class
類選擇器能夠重複利用id
選擇器惟一選擇器{屬性:值;屬性:值;}
標籤選擇器:頁面中全部的標籤都是一個選擇器 p{color:red;}
ID
選擇器
id
命名的元素 以 #
開頭 #p1{color:#0f0;}
類選擇器
class
選擇器,選擇clas
命名的元素 以.
開頭 .first{color:#00f;}
css
代碼寫完後上線前要通過壓縮處理css
版本(備份)壓縮後註釋都清除,空間體積減小
羣組選擇器
#main,.first,span,a,h1{color:red;}
p
span{color:red;}
屬性選擇器
a[title]{color:red;}
選擇包含title
的a
標籤a[title][href]{color:red;}
選擇包含title
和href
的a
標籤>
+
選擇器子類選擇器:只選擇子元素(只選擇兒子)(至關於包含元素)
p > span{color:red;}
p + span{color:red;}
<a>
僞類選擇器
a:link {color:#FF0000;}
/ 未訪問的連接 / (只用於a標籤)a:visited {color:#00FF00;}
/ 已訪問的連接 / (只用於a標籤)a:hover {color:#FF00FF;}
/* 鼠標移動到連接上*/
(可和其餘標籤結合一塊兒用)a:active {color:#0000FF;}
/ 選定的連接 /a:link
a:visited
a:hover
a:active
,記做lvha
輸入僞類選擇器(針對表單)
input:focus{color:red;}
/ 鍵盤輸入焦點 /其餘僞類選擇器
p:first-child{color:red;}
/* 第一個p *
/:before
在元素以前添加內容。:after
在元素以後添加內容。css
優先規則
ID
選擇器—> Class
類選擇器->標籤選擇器背景屬性:
背景的添加 :
背景顏色的添加:
background:red;
backgronnd-color:red;
背景圖片的添加:
background:url(「images/1.jpg」);
backgronnd-image:url(「images/1.jpg」);
background-repeat:no-repeat;
background-repeat:repeat-x;
background-repeat:repeat-y;
background-position
來實現background-position
的取值可爲英文單詞或者數值和百分值。background-positon
的英文單詞取值top left
top center
top right
center left
center center
center right
bottom left
bottom center
ottom right
background-positon
的數值取值
background-position:x y;
positon
的百分值取值
background-position:x% y%;
背景圖片的大小
background-size
來設置background-size
的取值可爲數值和百分值。background-size
的數值取值
background-size:x y;
background-size
的數值取值
background-size:x% y%;
背景圖片的滾動
背景圖片是否隨着內容的滾動而滾動由background-attachment
設置
background-attachment:fixed;
固定,不隨內容的滾動而滾動
background-attachment:scroll;
滾動,隨內容的滾動而滾動css
文字文本屬性:
文字屬性
color:red;
文字顏色font-size:12px
; 文字大小font-weight:「bold」
文字粗細(bold/normal
)font-family:「宋體」
文字字體font-variant:small-caps
小寫字母以大寫字母顯示文本屬性
text-align:center;
文本對齊(right
/left
/center
)line-height:10px;
行間距(可經過它實現文本的垂直居中)text-indent:20px;
首行縮進text-decoration:none;
none
/underline
/overline
/line-through
)letter-spacing
: 字間距html
標籤都是盒子模型div
標籤自定義盒子模型全部的標籤都是盒子模型
class
和id
的主要差異是:class
用於元素組(相似的元素,或者能夠理解爲某一類元素),而id
用於標識單獨的惟一的元素。盒子模型的組成
width
、height
寬高padding
border
邊框線margin
外邊距border
邊框
border:1px solid #f00;
單獨屬性:
border-width
:border-style:
dotted
點狀虛線dashed
(虛線)solid
(實線)double
(雙實線)border-color
(顏色)padding
內邊距
值:像素
/釐米
等長度單位、百分比
padding:10px;
上下左右padding:10px 10px;
上下 左右padding:10px 10px 10px;
上 左右 下padding:10px 10px 10px 10px;
上 右 下 左(設置4個點–>順時針方向)單獨屬性:
padding-top:
padding-right:
padding-bottom:
padding-left:
當設置內邊距的時候會把盒子撐大,爲了保持盒子原來的大小,應該高度和寬度進行減少,根據width
和height
減少
margin 外邊距
值:與padding
相同
單獨屬性:與padding
相同
外邊距合併:兩個盒子同時設置了外邊距,會進行一個外邊距合併
補充盒子模型內容
標準盒子模型
css
中一個重要的概念,理解了盒子模型才能更好的排版。其實盒子模型有兩種,分別是 ie
盒子模型和標準 w3c
盒子模型。他們對盒子模型的解釋各不相同,先來看看咱們熟知的標準盒子模型從上圖能夠看到標準 w3c
盒子模型的範圍包括 margin
、border
、padding
、content
,而且 content
部分不包含其餘部分
IE盒子模型
ie
盒子模型的範圍也包括 margin
、border
、padding
、content
和標準 w3c
盒子模型不一樣的是:ie
盒子模型的 content
部分包含了 border
和 padding
IE
盒子模型width
= padding
+border
+內容
標準盒子模型 = 內容的寬度(不包含border
+padding
)
例:
margin
爲 20px,border
爲 1px,padding
爲 10px,content
的寬爲 200px、高爲 50px,假如用標準 w3c
盒子模型解釋,那麼這個盒子須要佔據的位置爲:寬 20*2+1*2+10*2+200=262px
、高 20*2+1*2*10*2+50=112px
,盒子的實際大小爲:寬 1*2+10*2+200=222px
、高 1*2+10*2+50=72px
;假如用ie 盒子模型,那麼這個盒子須要佔據的位置爲:寬 20*2+200=240px
、高 20*2+50=70px
,盒子的實際大小爲:寬 200px
、高 50px
那應該選擇哪中盒子模型呢?固然是「標準 w3c
盒子模型」了。怎麼樣纔算是選擇了「標準 w3c
盒子模型」呢?很簡單,就是在網頁的頂部加上 doctype
聲明。
doctype
聲明,那麼各個瀏覽器會根據本身的行爲去理解網頁,即 ie
瀏覽器會採用 ie
盒子模型去解釋你的盒子,而 ff
會採用標準w3c
盒子模型解釋你的盒子,因此網頁在不一樣的瀏覽器中就顯示的不同了。doctype
聲明,那麼全部瀏覽器都會採用標準 w3c
盒子模型去解釋你的盒子,網頁就能在各個瀏覽器中顯示一致了。jquery
作的例子來證明一下
1
2
3
4
5
6
7
8
9
10
11
12
|
<html>
<head>
<title>你用的盒子模型是?</title>
<script language="javascript" src="jquery.min.js"></script>
<script language="javascript">
var sbox = $.boxmodel ? "標準w3c":"ie";
document.write("您的頁面目前支持:"+sbox+"盒子模型");
</script>
</head>
<body>
</body>
</html>
|
doctype
聲明,在 ie
瀏覽器中顯示 ie
盒子模型,在 ff 瀏覽器中顯示「標準w3c
盒子模型」。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html>
<head>
<title>你用的盒子模型是標準w3c盒子模型</title>
<script language="javascript" src="jquery.min.js"></script>
<script language="javascript">
var sbox = $.boxmodel ? "標準w3c":"ie";
document.write("您的頁面目前支持:"+sbox+"盒子模型");
</script>
</head>
<body>
</body>
</html>
|
doctype
聲明。在全部瀏覽器中都顯示「標準 w3c
盒子模型」因此爲了讓網頁能兼容各個瀏覽器,讓咱們用標準 w3c
盒子模型
擴展
行塊轉換
display:none
; 不顯示display:block
; 變成塊級元素display:inline
; 變成行級元素display:inline-block
; 以塊級元素樣式展現,以行級元素樣式排列溢出
overflow:hidden
; 溢出隱藏overflow:scroll
; 內容會被修剪,瀏覽器會顯示滾動條overflow:auto
; 若是內容被修剪,則產生滾動條文本不換行:white-space:nowrap
;
word-wrap:break-word
;行內元素和快級元素小結
1、塊級元素:block element
float
浮動後除外)。兩個塊級元素連續編輯時,會在頁面自動換行顯示。塊級元素通常可嵌套塊級元素或行內元素;塊級元素通常做爲容器出現,用來組織結構,但並不全是如此。有些塊級元素,如只能包含塊級元素。
DIV
是最經常使用的塊級元素,元素樣式的display:block
都是塊級元素。它們老是以一個塊的形式表現出來,而且跟同級的兄弟塊依次豎直排列,左右撐滿。
2、行內元素:inline element
SPAN
元素,IFRAME
元素和元素樣式的display : inline
的都是行內元素。例如文字這類元素,各個字母 之間橫向排列,到最右端自動折行。3、block(塊)元素的特色:
4、inline元素的特色
對行內元素,須要注意以下:
width
無效。 設置高度height
無效,能夠經過line-height
來設置。 設置margin
margin
有效,上下無效。padding
只有左右padding
有效,上下則無效。注意元素範圍是增大了,可是對元素周圍的內容是沒影響的。5、常見的塊狀元素
address
– 地址blockquote
– 塊引用center
– 舉中對齊塊dir
– 目錄列表div
– 經常使用塊級容易,也是CSS layout
的主要標籤dl
– 定義列表fieldset
– form
控制組form
– 交互表單h1
– 大標題h2
– 副標題h3
– 3級標題h4
– 4級標題h5
– 5級標題h6
– 6級標題hr
– 水平分隔線isindex
– input prompt
menu
– 菜單列表noframes
– frames
可選內容,(對於不支持frame的瀏覽器顯示此區塊內容noscript
– 可選腳本內容(對於不支持script
的瀏覽器顯示此內容)ol
– 有序表單p
– 段落pre
– 格式化文本table
– 表格ul
– 無序列表6、常見的內聯元素
a
– 錨點abbr
– 縮寫acronym
– 首字b
– 粗體(不推薦)bdo
– bidi override
big
– 大字體br
– 換行cite
– 引用code
– 計算機代碼(在引用源碼的時候須要)dfn
– 定義字段em
– 強調font
– 字體設定(不推薦)i
– 斜體img
– 圖片input
– 輸入框kbd
– 定義鍵盤文本label
– 表格標籤q
– 短引用s
– 中劃線(不推薦)samp
– 定義範例計算機代碼select
– 項目選擇small
– 小字體文本span
– 經常使用內聯容器,定義文本內區塊strike
– 中劃線strong
– 粗體強調sub
– 下標sup
– 上標textarea
– 多行文本輸入框tt
– 電傳文本u
– 下劃線七,可變元素
applet
- java applet
button
- 按鈕del
- 刪除文本iframe
- inline frame
ins
- 插入的文本map
- 圖片區塊(map
)object
- object
對象script
- 客戶端腳本8、行內元素與塊級元素有什麼不一樣
區別一:
區別二:
區別三:
margin
,padding
margin-left;
margin-right;
padding-left;
padding-right
;能夠生效。可是豎直方向的margin-bottom
; margin-top
; padding-top
; padding-bottom
;卻不能生效。
區別四:
display:block
;display:inline
;替換元素有以下:(和img
同樣的設置方法)
<img>
、<input>
、<textarea>
、<select>
<object>
都是替換元素,這些元素都沒有實際的內容display
屬性來切換塊級元素和行內元素static
靜態定位(不對它的位置進行改變,在哪裏就在那裏)
top
,bottom,
left, right
或者 z-index
聲明)。fixed
固定定位(參照物–瀏覽器窗口)—作 彈窗廣告用到
"left"
, "top"
, "right"
以及 "bottom"
屬性進行規定。relative
(相對定位 )(參照物以他自己)
absolute
(絕對定位)(除了static
均可以,找到參照物–>與它最近的已經有定位的父元素進行定位)
static
定位之外的第一個父元素進行定位。left"
, "top"
, "right"
以及 "bottom"
屬性進行規定z-index
z-index
屬性設置元素的堆疊順序。擁有更高堆疊順序的元素老是會處於堆疊順序較低的元素的前面。一切皆爲框
div
、h1
或p
元素 即:顯示爲一塊內容稱之爲 「塊框「 ;span
,strong
,a
等元素 即:內容顯示在行中稱 「行內框」;display:block
; 讓行內元素設置爲塊級元素,display:none;
沒有框相對定位:
.adv_relative { position: relative; left: 30px; top: 20px; }
絕對定位:
.adv_absolute { position: absolute; left: 30px; top: 20px; }
frameset
框架:
<frameset>
—- 用來定義一個框架;雙標籤<body>
一塊兒使用rows
、cols
屬性
rows
定義行表示框架有多少行(取值 px
/%
/ *
)cols
定義列表示框架有多少列(取值px
/ %
/ *
)frame子框架
<frame
> —- 表示框架中的某一個部分;單標籤,要跟結束標誌
src
顯示的網頁的路徑name
框架名frameborder
邊框線(取值 0 / 1)<noframes
>屬性
<noframes
> 提供不支持框架的瀏覽器顯示body
的內容;雙標籤
1
2
3
4
5
6
7
8
|
<frameset>
<frame src=「」 />
<frame src=「」 />
<frame src=「」 />
<noframes>
<body>內容</body>
</noframes>
</frameset>
|
<iframe>
內聯框架
iframe
元素會建立包含另一個文檔的內聯框架(即行內框架)body
一塊兒使用width
寬(取值 px / %)height
高(取值 px / %)name
框架名frameborder
邊框線(取值 0 / 1)src
顯示的網頁的路徑opacity
透明屬性
opacity
IE6/7/
,使用filter:alpha(opacity:值;
) 值爲0-100
Webkit
,Opera
,Firefox
,IE9+
,使用opacity
:值; 值爲0-1
-moz-opacity
:值; 值爲0-1
1
2
3
4
5
|
{
opacity:0.5;
filter:alpha(opacity:50);/*0-100*/
-moz-opacity:0.5; /*取值0-1*/-->針對早起版本的火狐兼容問題的解決
}
|
border-radius
圓角邊框屬性
div
元素添加圓角邊框
border-radius:10px
;box-shadow
陰影屬性
box-shadow
屬性向框添加陰影效果,後面跟4個參數。
box-shadow:0px 0px 10px #000;
<embed>
屬性
是HTML5
中新增的標籤,媒體嵌入插件標籤,能夠經過<embed>
插入音頻或視頻
<embed src=「media/music.mp3」 />
格式.mid
.wav
.mp3
等
css
常見簡寫企業DIV
使用頻率高的命名方法
網頁內容類
標題: title
summary
arrow
label
logo
corner
banner
subMenu
search
searchBox
login
loginbar
toolbar
drop
tab
current
list
scroll
service
msg
hot
news
tips
download
title
hot
joinus
regsiter
guide
friendlink
status
copyright
btn
partner
vote
left
right
center
/* Footer */
內容區/* End Footer */
id的命名:
頁面結構
container
header
content
/container
main
footer
nav
sidebar
column
wrapper
left
right
center
導航
nav
mainbav
subnav
topnav
sidebar
leftsidebar
rightsidebar
menu
submenu
title
summary
功能
logo
banner
login
loginbar
regsiter
search
shop
title
joinus
status
btn
scroll
tab
list
msg
current
tips
icon
note
guild
service
hot
news
download
vote
partner
link
copyright
class
的命名:
顏色:使用顏色的名稱或者16進制代碼,如
.red { color: red; }
.f60 { color: #f60; }
.ff8600 { color: #ff8600; }
字體大小,直接使用」font+字體大小」做爲名稱,如
.font12px { font-size: 12px; }
.font9px {font-size: 9pt; }
對齊樣式,使用對齊目標的英文名稱,如
.left { float:left; }
.bottom { float:bottom; }
標題欄樣式,使用」類別+功能」的方式命名,如
.barnews { }
.barproduct { }
注意事項::
推薦的 CSS
書寫順序:
顯示屬性
display
list-style
position
float
clear
自身屬性
width
height
margin
padding
border
background
文本屬性
color
font
text-decoration
text-align
vertical-align
white-space
other text
content
CSS
雪碧的基本原理是把你的網站上用到的一些圖片整合到一張單獨的圖片中,從而減小你的網站的HTTP請求數量。
CSS
background和background-position
屬性渲染,這也就意味着你的標籤變得更加複雜了,圖片是在CSS
中定義,而非<img>
標籤。CSS
作成按鈕的樣式,咱們可使用同一張圖片,完成按鈕的三個狀態,a:link
,a:hover
,a:active
<a class="button" href="#">連接</a>
200px 65px
的三個按鈕圖拼合而成的圖片button.png
,從上到下一次爲按鈕的普通、鼠標滑過、鼠標點擊的狀態。則可使用CSS
進行定義。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
a {
display:block;
width:200px;
height:65px;
line-height:65px; /*定義狀態*/
text-indent:-2015px; /*隱藏文字*/
background-image:url(button.png); /*定義背景圖片*/
background-position:0 0;
/*定義連接的普通狀態,此時圖像顯示的是頂上的部分*/
}
a:hover {
background-position:0 -66px;
/*定義連接的滑過狀態,此時顯示的爲中間部分,向下取負值*/
}
a:active {
background-position:0 -132px;
/*定 義連接的普通狀態,此時顯示的是底部的部分,向下取負值*/
}
|
CSS
雪碧,圖片更復雜,背景定位更精確。可能會用到大量的數值
background:url(nav.png) -180px 24pxno-repeat
; 來達到更精確的定位sprite
技術的其中一個好處是圖片的加載時間(在有許多 sprite
時,單張圖片的加載時間)。由所需圖片拼成的一張 GIF
圖片的尺寸會明顯小於全部圖片拼合前的大小。單張的 GIF
只有相關的一個色表,而單獨分割的每一張 GIF
都有本身的一個色表,這就增長了整體的大小。所以,單獨的一張 JPEG
或者 PNG
sprite
在大小上很是可能比把一張圖分紅多張得來的圖片總尺寸小。bug
IE6
不會主動預加載鼠標滑過即a:hover
中的背景圖片,因此,若是使用多張圖片,鼠標滑過會出現閃白的現象。使用CSS
雪碧,因爲一張圖片便可,因此不會出現這種現象。CSS
雪碧的最大問題是內存使用CSS
的編寫變得困難CSS
雪碧調用的圖片不能被打印Sprites
影響可訪問性從下面的幾個方面能夠進行頁面的優化:
CSS
文件合併CSS
中使用 import
CSS
值縮寫(Shorthand Property
)CSS
製做顯示錶現不要使用太小的圖片作背景平鋪
1px
的緣由,這才知曉。寬高 1px
的圖片平鋪出一個寬高 200px
的區域,須要 200200=40, 000
次,佔用資源無邊框
border:none
;,哈哈,我一直在用這個。 border:0;
只是定義邊框寬度爲零,但邊框樣式、顏色仍是會被瀏覽器解析,佔用資源慎用 通配符
CSS
中的全部標籤均初始化,無論用的不用的,過期的先進的,一視同仁,這樣,大大的佔用資源。要有選擇的初始化標籤。CSS
的十六進制顏色代碼縮寫
樣式放頭上,腳本放腳下。不內嵌,只外鏈
堅定不用 CSS
表達式
使用 引用樣式表,而不是經過@import
導入。
通常來講,PNG
比 GIF
要小,小得多。再者,GIF
中有多少顏色是被浪費的,很值得優化。
千萬不要在 HTML
中縮放圖片,一者很差看,兩者佔資源。
正文字體最好用偶數
12px
、14px
、16px
,效果很是好。特例,15px
。block
、ul
、ol
等上下留出至少一倍行距,左側至少兩倍行距,右側隨意。
段落之間,至少要有一倍行距
強行指定某些元素的 line-height
,正文 1.6
倍於文字大小,標題1.3
倍。
中文標點用全角
中文字體的粗體和斜體,遠離較好
CSS
初始化示例代碼【僅供參考】
html
頭文件中直接引用,從而避免瀏覽器的不兼容帶來的錯誤。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
button,
textarea,
p,
blockquote,
th,
td {
margin:0; padding:0;
}
body {
background:#fff;
color:#555;
font-size:14px;
font-family: Verdana, Arial, Helvetica, sans-serif;
}
td,
th,
caption {
font-size:14px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
font-weight:normal;
font-size:100%;
}
address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
font-style:normal;
font-weight:normal;
}
a {
color:#555;
text-decoration:none;
}
a:hover {
text-decoration:underline;
}
img {
border:none;
}
ol,ul,li {
list-style:none;
}
input,
textarea,
select,
button {
font:14px Verdana,Helvetica,Arial,sans-serif;
}
table {
border-collapse:collapse;
}
html {
overflow-y: scroll;
}
.clearfix:after {
content: ".";
display: block;
height:0;
clear:both;
visibility: hidden;
}
.clearfix {
*zoom:1;
}
|
mobile meta
標籤
1
|
<meta name=」viewport」 content=」width=320,target-densitydpi=dpi_value,initial-scale=1, user-scalable=no」/>
|
1
|
table-layout: fixed; word-break: break-all;;border-collapse: collapse
|
1
2
3
4
5
|
<div id=」abc」 style=」display:table;text-align:center;width:100%;height:100%;」>
<span style=」background:#f00; display:table-cell; vertical-align:middle;」>
<input type=」button」 value=」item1″ />
</span>
</div>
|
1
2
3
4
|
filter:alpha(opacity=50); /*1-100*/
-moz-opacity:0.5; /*0-1.0*/
-khtml-opacity:0.5; /*0-1.0*/
opacity:0.5; /*0-1.0*/
|
1
2
3
|
white-space:nowrap;
text-overflow:ellipsis;
overflow:hidden;
|
清除浮動的幾種方法
方法一:投機取巧法
– 不推薦
方法二:overflow + zoom
方法 –不推薦.fix{overflow:hidden; zoom:1;}
方法三:after + zoom
方法 -推薦–此方法能夠說是綜合起來最好的方法了
clearfix
只應用在包含浮動子元素的父級元素上
1
2
3
4
5
6
7
8
|
.fix{zoom:1;}
.fix:after{
display:block;
content:'clear';
clear:both;
line-height:0;
visibility:hidden;
}
|
自動繼承屬性:
color
font
text-align
list-style
非繼承屬性:
background
border
position
具備破壞性的元素:
float
display:none;
position:absoblute/fixed/sticky;
具備包裹性的元素:
display:inline-block/table-cell
position:absolute/fixed/sticky
overflow:hidden/scroll
消除圖片底部間隙的方法
圖片塊狀化-無基線對齊img{display:block;}
圖片底線對齊img{vertical-align:bottom;}
行高足夠小 - 基線位置上移.box{line-height:0;}
BFC
」Block Formatting Context」
中文爲「塊級格式化上下文」記住這麼一句話:BFC
元素特性表現原則就是,內部子元素再怎麼翻江倒海,翻雲覆雨都不會影響外部的元素
BFC
就是頁面上的一個隔離的獨立容器,容器裏面的子元素不會影響到外面的元素。反之也如此
擴展閱讀
graceful degradation
)
progressive enhancement
:
JavaScript
功能後,若是瀏覽器版本不支持某些 JavaScript
能力,咱們解決這種問題的方式JavaScript
功能,或沒有開啓JavaScript
功能狀況下,咱們解決這種問題的方式;關於佈局
其餘