摘要:塊元素的例子內聯元素只需要必要的寬度,不強制換行。內聯元素的例子如何改變一個元素顯示可以更改內聯元素和塊元素把列表項顯示為內聯元素把元素作為塊元素定位五大屬性定位元素的默認值,即沒有定位,元素出現在正常的流中靜態定位的元素不會受到影響。
?Infi-chu:
http://www.cnblogs.com/Infi-chu/
?
CSS盒子模型
?? ?概念:CSS盒模型本質上是一個盒子,封裝周圍的HTML元素,它包括:邊距,邊框,填充,和實際內容。盒模型允許我們在其它元素和周圍元素邊框之間的空間放置元素。
?? ?如下所示:
?? ?
?? ?不同部分的說明:
?? ??? ?Margin(外邊距) - 清除邊框外的區域,外邊距是透明的。
?? ??? ?Border(邊框) - 圍繞在內邊距和內容外的邊框。
?? ??? ?Padding(內邊距) - 清除內容周圍的區域,內邊距是透明的。
?? ??? ?Content(內容) - 盒子的內容,顯示文本和圖像。
?? ?元素的寬度和高度:
?? ??? ?例子:300px (寬)+ 50px (左 + 右填充)+ 50px (左 + 右邊框)+ 50px (左 + 右邊距)= 450px
?? ??? ?總結:
?? ??? ??? ?最終元素的總寬度計算公式是這樣的:總元素的寬度=寬度+左填充+右填充+左邊框+右邊框+左邊距+右邊距
?? ??? ??? ?元素的總高度最終計算公式是這樣的:總元素的高度=高度+頂部填充+底部填充+上邊框+下邊框+上邊距+下邊距
?? ?
CSS邊框:
?? ?邊框樣式:
?? ??? ?border-style屬性用來定義邊框的樣式。
?? ??? ?常用的值:
?? ??? ??? ?none: 默認無邊框
?? ??? ??? ?dotted: 定義一個點線邊框
?? ??? ??? ?dashed: 定義一個虛線邊框
?? ??? ??? ?solid: 定義實線邊框
?? ??? ??? ?double: 定義兩個邊框。 兩個邊框的寬度和 border-width 的值相同
?? ??? ??? ?groove: 定義3D溝槽邊框。效果取決于邊框的顏色值
?? ??? ??? ?ridge: 定義3D脊邊框。效果取決于邊框的顏色值
?? ??? ??? ?inset:定義一個3D的嵌入邊框。效果取決于邊框的顏色值
?? ??? ??? ?outset: 定義一個3D突出邊框。 效果取決于邊框的顏色值
?? ??? ??? ?
?? ?邊框寬度:
?? ??? ?通過 border-width 屬性為邊框指定寬度。
?? ??? ?為邊框指定寬度有兩種方法:
?? ??? ??? ?可以指定長度值,比如 2px 或 0.1em(單位為 px, pt, cm, em 等);
?? ??? ??? ?或者使用 3 個關鍵字之一,它們分別是 thick 、medium(默認值) 和 thin。
?? ??? ?注:CSS 沒有定義 3 個關鍵字的具體寬度,所以一個用戶可能把 thick 、medium 和 thin 分別設置為等于 5px、3px 和 2px,而另一個用戶則分別設置為 3px、2px 和 1px。?? ?
?? ??? ?
p.one { border-style:solid; border-width:5px; } p.two { border-style:solid; border-width:medium; }
?
?? ?
?? ?邊框顏色:
?? ??? ?border-color屬性用于設置邊框的顏色。可以設置的顏色:
?? ??? ??? ?name - 指定顏色的名稱,如 "red"
?? ??? ??? ?RGB - 指定 RGB 值, 如 "rgb(255,0,0)"
?? ??? ??? ?Hex - 指定16進制值, 如 "#ff0000"
?? ??? ?注: border-color多帶帶使用是不起作用的,必須得先使用border-style來設置邊框樣式。
?? ??? ??? ?
p.one { border-style:solid; border-color:red; } p.two { border-style:solid; border-color:#98bf21; }
?
?? ??? ?
?? ?多帶帶設置各個邊:
?? ?border-style屬性可以有1-4個值:
?? ??? ?border-style:dotted solid double dashed;
?? ??? ??? ?上邊框是 dotted
?? ??? ??? ?右邊框是 solid
?? ??? ??? ?底邊框是 double
?? ??? ??? ?左邊框是 dashed
?? ??? ?border-style:dotted solid double;
?? ??? ??? ?上邊框是 dotted
?? ??? ??? ?左、右邊框是 solid
?? ??? ??? ?底邊框是 double
?? ??? ?border-style:dotted solid;
?? ??? ??? ?上、底邊框是 dotted
?? ??? ??? ?右、左邊框是 solid
?? ??? ?border-style:dotted;
?? ??? ??? ?四面邊框是 dotted
?? ?
?? ?常用邊框屬性:
?? ??? ?border ?? ?簡寫屬性,用于把針對四個邊的屬性設置在一個聲明。
?? ??? ?border-style ?? ?用于設置元素所有邊框的樣式,或者多帶帶地為各邊設置邊框樣式。
?? ??? ?border-width ?? ?簡寫屬性,用于為元素的所有邊框設置寬度,或者多帶帶地為各邊邊框設置寬度。
?? ??? ?border-color ?? ?簡寫屬性,設置元素的所有邊框中可見部分的顏色,或為 4 個邊分別設置顏色。
?? ??? ?border-bottom ?? ?簡寫屬性,用于把下邊框的所有屬性設置到一個聲明中。
?? ??? ?border-bottom-color ?? ?設置元素的下邊框的顏色。
?? ??? ?border-bottom-style ?? ?設置元素的下邊框的樣式。
?? ??? ?border-bottom-width ?? ?設置元素的下邊框的寬度。
?? ??? ?border-left ?? ?簡寫屬性,用于把左邊框的所有屬性設置到一個聲明中。
?? ??? ?border-left-color ?? ?設置元素的左邊框的顏色。
?? ??? ?border-left-style ?? ?設置元素的左邊框的樣式。
?? ??? ?border-left-width ?? ?設置元素的左邊框的寬度。
?? ??? ?border-right ?? ?簡寫屬性,用于把右邊框的所有屬性設置到一個聲明中。
?? ??? ?border-right-color ?? ?設置元素的右邊框的顏色。
?? ??? ?border-right-style ?? ?設置元素的右邊框的樣式。
?? ??? ?border-right-width ?? ?設置元素的右邊框的寬度。
?? ??? ?border-top ?? ?簡寫屬性,用于把上邊框的所有屬性設置到一個聲明中。
?? ??? ?border-top-color ?? ?設置元素的上邊框的顏色。
?? ??? ?border-top-style ?? ?設置元素的上邊框的樣式。
?? ??? ?border-top-width ?? ?設置元素的上邊框的寬度。
?? ??? ?
CSS輪廓:
?? ?CSS輪廓:
?? ??? ?輪廓(outline)是繪制于元素周圍的一條線,位于邊框邊緣的外圍,可起到突出元素的作用;CSS outline 屬性規定元素輪廓的樣式、顏色和寬度。
?? ??? ?如圖所示:
?? ?
?? ?所有屬性:
?? ??? ?屬性 ?? ??? ??? ??? ??? ??? ??? ?說明 ?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?值 ?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?CSS
?? ??? ?outline ?? ??? ??? ?在一個聲明中設置所有的輪廓屬性 ?? ?outline-color、outline-style、outline-width、inherit ?? ??? ??? ??? ?2
?? ??? ?outline-color ?? ??? ??? ?設置輪廓的顏色 ?? ??? ??? ??? ?color-name、hex-number、rgb-number、invert、inherit?? ? ?? ??? ??? ??? ?2
?? ??? ?outline-style ?? ??? ??? ?設置輪廓的樣式 ?? ??? ?none、dotted、dashed、solid、double、groove、ridge、inset、outset、inherit ?? ?2
?? ??? ?outline-width ?? ??? ??? ?設置輪廓的寬度 ?? ??? ??? ??? ?thin、medium、thick、length、inherit ?? ??? ??? ??? ??? ??? ??? ??? ?2
?? ??? ?
CSS外邊距:
?? ?margin:
?? ??? ?margin 清除周圍的(外邊框)元素區域。margin 沒有背景顏色,是完全透明的;margin 可以多帶帶改變元素的上,下,左,右邊距,也可以一次改變所有的屬性。
?? ??? ?如圖所示:
?? ?
?? ??? ?可以輸入的值:
?? ??? ??? ?值 ?? ??? ??? ?說明
?? ??? ??? ?auto ?? ?設置瀏覽器邊距,這樣做的結果會依賴于瀏覽器
?? ??? ??? ?length ?? ?定義一個固定的margin(使用像素,pt,em等)
?? ??? ??? ?% ?? ??? ?定義一個使用百分比的邊距
?? ?
?? ?單邊 外邊距屬性:
?? ??? ?margin-top:100px;
?? ??? ?margin-bottom:100px;
?? ??? ?margin-right:50px;
?? ??? ?margin-left:50px;
?? ?
?? ?簡寫:
?? ??? ?margin:25px 50px 75px 100px;
?? ??? ??? ?上邊距為25px
?? ??? ??? ?右邊距為50px
?? ??? ??? ?下邊距為75px
?? ??? ??? ?左邊距為100px
?? ??? ?margin:25px 50px 75px;
?? ??? ??? ?上邊距為25px
?? ??? ??? ?左右邊距為50px
?? ??? ??? ?下邊距為75px
?? ??? ?margin:25px 50px;
?? ??? ??? ?上下邊距為25px
?? ??? ??? ?左右邊距為50px
?? ??? ?margin:25px;
?? ??? ??? ?所有的4個邊距都是25px
?? ??? ??? ?
CSS填充:
?? ?Padding:
?? ??? ?當元素的 padding(填充)內邊距被清除時,所釋放的區域將會受到元素背景顏色的填充;多帶帶使用 padding 屬性可以改變上下左右的填充。
?? ??? ?如圖所示:
?? ?
?? ??? ?可以輸入的值:
?? ??? ??? ?值 ?? ??? ??? ?說明
?? ??? ??? ?length ?? ??? ?定義一個固定的填充(像素, pt, em,等)
?? ??? ??? ?% ?? ??? ??? ?使用百分比值定義一個填充
?? ?
?? ?填充 單邊內邊距:
?? ??? ?padding-top:25px;
?? ??? ?padding-bottom:25px;
?? ??? ?padding-right:50px;
?? ??? ?padding-left:50px;
?? ??? ?
?? ?簡寫:
?? ??? ?padding:25px 50px 75px 100px;
?? ??? ??? ?上填充為25px
?? ??? ??? ?右填充為50px
?? ??? ??? ?下填充為75px
?? ??? ??? ?左填充為100px
?? ??? ?padding:25px 50px 75px;
?? ??? ??? ?上填充為25px
?? ??? ??? ?左右填充為50px
?? ??? ??? ?下填充為75px
?? ??? ?padding:25px 50px;
?? ??? ??? ?上下填充為25px
?? ??? ??? ?左右填充為50px
?? ??? ?padding:25px;
?? ??? ??? ?所有的填充都是25px
CSS分組和嵌套:
?? ?分組選擇器:
?? ??? ?在樣式表中有很多具有相同樣式的元素;為了盡量減少代碼,你可以使用分組選擇器;每個選擇器用逗號分隔。
h1,h2,p { color:green; }
?
?? ?
?? ?嵌套選擇器:
?? ??? ?它可能適用于選擇器內部的選擇器的樣式。
/* p{ }: 為所有 p 元素指定一個樣式。 .marked{ }: 為所有 class="marked" 的元素指定一個樣式。 .marked p{ }: 為所有 class="marked" 元素內的 p 元素指定一個樣式。 p.marked{ }: 為所有 class="marked" 的 p 元素指定一個樣式。 */ p { color:blue; text-align:center; } .marked { background-color:red; } .marked p { color:white; } p.marked{ text-decoration:underline; }
?
CSS尺寸:
?? ?常用屬性:
?? ??? ?屬性 ?? ??? ??? ??? ?描述
?? ??? ?height ?? ??? ??? ?設置元素的高度。
?? ??? ?line-height ?? ?設置行高。
?? ??? ?max-height ?? ??? ?設置元素的最大高度。
?? ??? ?max-width ?? ??? ?設置元素的最大寬度。
?? ??? ?min-height ?? ??? ?設置元素的最小高度。
?? ??? ?min-width ?? ??? ?設置元素的最小寬度。
?? ??? ?width ?? ??? ??? ?設置元素的寬度。
CSS Display(顯示) 與 Visibility(可見性):
?? ?隱藏元素 - display:none或visibility:hidden:
?? ??? ?隱藏一個元素可以通過把display屬性設置為"none",或把visibility屬性設置為"hidden"。但是請注意,這兩種方法會產生不同的結果;visibility:hidden可以隱藏某個元素,但隱藏的元素仍需占用與未隱藏之前一樣的空間。也就是說,該元素雖然被隱藏了,但仍然會影響布局。
?? ??? ?display:none可以隱藏某個元素,且隱藏的元素不會占用任何空間。也就是說,該元素不但被隱藏了,而且該元素原本占用的空間也會從頁面布局中消失。
?? ??? ?
?? ??? ?h1.hidden {visibility:hidden;}
?? ??? ?h1.hidden {display:none;}
?? ??? ?
?? ?CSS Display - 塊和內聯元素:
?? ??? ?塊元素是一個元素,占用了全部寬度,在前后都是換行符。
?? ??? ?塊元素的例子:
?? ??? ??? ?
?? ??? ??? ?
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/1725.html
?Infi-chu: http://www.cnblogs.com/Infi-chu/ ? 簡介:??? CSS 指層疊樣式表 (Cascading Style Sheets)??? 樣式定義如何顯示 HTML 元素??? 樣式通常存儲在樣式表中??? 把樣式添加到 HTML 4.0 中,是為了解決內容與表現分離的問題??? 外部樣式表可以極大提高工作效率??? 外部樣式表通常存儲在 CSS 文件...
摘要:選擇器選擇器可以為標有特定的元素指定特定的樣式中選擇器以來定義。選擇器選擇器用于描述一組元素的樣式,選擇器有別于選擇器,可以在多個元素中使用在中,類選擇器以一個點號顯示。?Infi-chu: http://www.cnblogs.com/Infi-chu/ ? id選擇器id 選擇器可以為標有特定 id 的 HTML 元素指定特定的樣式,CSS 中 id 選擇器以 # 來定義。 #id_n...
摘要:前端日報精選我是如何實現的在線升級熱更新功能的張鑫旭鑫空間鑫生活翻譯表單的運用第期晉升評審的套路異步編程的四種方式黃博客精選組件設計和分解思考掘金中文譯使登錄頁面變得正確掘金前端從強制開啟壓縮探究插件運行機制掘金個常用的簡 2017-06-28 前端日報 精選 我是如何實現electron的在線升級熱更新功能的? ? 張鑫旭-鑫空間-鑫生活【翻譯】React 表單: Refs 的運用【...
摘要:前端日報精選浮點數精度之謎前端面試必備基本排序算法從賀老微博引出的遍歷器加速那些奧秘進階之深入理解數據雙向綁定全棧天中文深入理解筆記用模塊封裝代碼前端架構經驗分享周二放送自制知乎專欄譯在大型應用中使用的五個技巧掘金開發指南眾成 2017-08-02 前端日報 精選 JavaScript 浮點數精度之謎前端面試必備——基本排序算法從賀老微博引出的遍歷器(Iterators)加速那些奧秘J...
摘要:前端日報精選專題之類型判斷下百度生態構建發布基于的解決方案將全面支持從綁定,看語言發展和框架設計掘金譯機器學習與一付費問答上線,向你心目中的大牛提問吧產品技術日志中文第期團隊技術信息流建設翻譯基于路由的異步組件加載個必備的裝逼 2017-07-06 前端日報 精選 JavaScript專題之類型判斷(下) · Issue #30 · mqyqingfeng/Blog 百度Web生態構...
閱讀 940·2021-09-27 13:36
閱讀 888·2021-09-08 09:35
閱讀 1064·2021-08-12 13:25
閱讀 1437·2019-08-29 16:52
閱讀 2907·2019-08-29 15:12
閱讀 2726·2019-08-29 14:17
閱讀 2606·2019-08-26 13:57
閱讀 1012·2019-08-26 13:51