CSS的盒子模型-最全語法

2021-01-07 可樂鴨CutieDuck

1. 盒子模型簡介

概述:所謂盒子模型,就是把HTML頁面中的布局元素看作是一個矩形的盒子,也就是一個盛裝內容的容器。當這些元素都是盒子以後,我們的布局就變成了在頁面中擺放盒子。每個矩形都由元素的內容(content)、內邊距(padding)、邊框(border)和外邊距(margin)組成

盒子模型特性:每個盒子都有:邊界、邊框、填充、內容 4個屬性;每個屬性都包括4個部分:上、右、下、左。屬性的4部分可以同時設置,也可以分別設置

2. 邊框(border)

border屬性來定義盒子的邊框

語法:border : border-width || border-style || border-color

注意:這個順序不能錯

該屬性包含3個子屬性:

border-width(邊框寬度) :定義邊框的粗細,單位是pxborder-style(邊框樣式):邊框的樣式border-color(邊框顏色):邊框的顏色邊框樣式:

邊框分開寫:

注意:當定義邊框寬度時,必須要定義邊框的顯示樣式。由於默認樣式為none,所以僅設置邊框的寬度,由於樣式不存在,邊框寬度也自動被清除為 0

表格的細線邊框(border-collapse:collapse;)

這個屬性控制瀏覽器繪製表格邊框的方式,它控制相鄰單元格的邊框,從而讓兩個重疊的單元格之間的那條重疊線變成一條線

collapse這個單詞是合併的意思;border-collapse:collapse;表示相鄰邊框合併在一起

3. 內邊距(padding)

padding屬性用於設置內邊距。 是指 邊框與內容之間的距離。padding-top:上內邊距padding-right:右內邊距padding-bottom:下內邊距padding-left:左內邊距 注意:

後面跟幾個數值表示的意思是不一樣的padding也會影響盒子的實際大小

4. 外邊距(margin)

margin屬性用於設置外邊距。 設置外邊距會在元素之間創建「空白」,定義了元素與其他相鄰元素的距離, 這段空白通常不能放置其他內容。margin-top:上外邊距margin-right:右外邊距margin-bottom:下外邊距margin-left:上外邊距margin:上外邊距 右外邊距 下外邊距 左外邊取值順序跟內邊距相同

擴展1:盒子水平居中,必須滿足以下兩個條件:

必須是塊級元素盒子必須指定了寬度(width)

然後就給左右的外邊距都設置為auto,就可使塊級元素水平居中

擴展2:清除元素的默認內外邊距為了更方便地控制網頁中的元素,製作網頁時,可使用如下代碼清除元素的默認內外邊距:

Tips: 行內元素是只有左右外邊距的,是沒有上下外邊距的。 內邊距,在ie6等低版本瀏覽器也會有問題。我們儘量不要給行內元素指定上下的內外邊距就好了。行內元素修改text-align:center也可以達到居中顯示的效果

擴展3:外邊距合併

1、相鄰塊元素垂直外邊距的合併(外邊距垂直塌陷)

當上下相鄰的兩個塊元素相遇時,如果上面的元素有下外邊距margin-bottom,下面的元素有上外邊距margin-top,則他們之間的垂直間距不是margin-bottom與margin-top之和,而是兩者中的較大者。這種現象被稱為相鄰塊元素垂直外邊距的合併(也稱外邊距塌陷)。

2、嵌套塊元素垂直外邊距的合併

對於兩個嵌套關係的塊元素,如果父元素沒有上內邊距及邊框,則父元素的上外邊距會與子元素的上外邊距發生合併,合併後的外邊距為兩者中的較大者,即使父元素的上外邊距為0,也會發生合併。

解決方案:

可以為父元素定義1像素的上邊框或上內邊距。可以為父元素添加overflow:hidden

5. 內容的寬度(weight)和高度(height)

使用寬度屬性width和高度屬性height可以對盒子的大小進行控制。

width和height的屬性值可以為不同單位的數值或相對於父元素的百分比%,實際工作中最常用的是像素值

計算方式:

/*外盒尺寸計算(元素空間尺寸)*/Element空間高度 = content height + padding + border + margin Element 空間寬度 = content width + padding + border + margin /*內盒尺寸計算(元素實際大小)*/ Element Height = content height + padding + border (Height為內容高度) Element Width = content width + padding + border (Width為內容寬度)

注意:

1、寬度屬性 width 和高度屬性 height 僅適用於塊級元素,對行內元素無效( img 標籤和 input除外)。

2、計算盒子模型的總高度時,還應考慮上下兩個盒子垂直外邊距合併的情況。

3、如果一個盒子沒有給定寬度/高度或者繼承父親的寬度/高度,則padding 不會影響本盒子大小。

6. 盒子模型布局穩定性

根據穩定性來分,建議如下:按照優先使用 寬度 (width) 其次 使用內邊距(padding) 再次 外邊距(margin)

7. 圓角邊框:border-radius

在CSS3中,新增了圓角邊框的樣式,這樣就能讓盒子變成圓角了

border-radius屬性用於設置元素的外邊框圓角

語法:border-radius: length;

radius半徑(圓的半徑)原理:橢圓與邊框的交集形成圓角效果

參數值:

可以為數值或百分比的形式如果是正方形,想要設置一個圓,把數值改為高度或者寬度的一半即可,或者直接寫50%如果是矩形,設置為高度的一半就可以做該屬性是一個簡寫屬性,可以跟四個值

分別表示左上角、右上角、右下角、 左下角

border-top-left-radius、border-top-right-radius

border-bottom-right-radius、border-bottom-left-radius

8. 盒子陰影:box-shadow

box-shadow屬性為盒子添加陰影

語法:box-shadow:h-shadow v-shadow blur spread color inset;

注意:

默認是外陰影(outset),不要寫這個單詞,否則會導致陰影失效。如果改為inset就是內部陰影了盒子陰影不佔用空間,不會影響其他盒子排列

9. 文字陰影:text-shadow

使用text-shadow屬性來設置文本的陰影

相關焦點

  • CSS的盒子模型和浮動,都在這了
    點關注,不迷路,每天分享大量前端知識css中的盒子模型 css處理網頁時,他認為每個元素都包含在一個不可見的矩形盒子 盒子是由 內容區,內邊距(padding),邊框,外邊距(margin)組成在瀏覽器中,其默認樣式中存在一些body等元素存在的默認樣式,比如一些外邊距
  • 弄懂css盒子模型從這幾點入手,新手建議收藏!
    怎麼理解盒子模型?盒子模型是樣式表(css)控制頁面的很重要的概念。如果理解了盒子模型和其中每個元素的用法,才能熟練使用css的定位方法和技巧。所有的頁面的元素都可以看成是一個盒子,佔據一定的頁面空間。佔據的空間要比實際使用的空間要大得多。
  • HTML--盒子模型的應用
    :至此,我們應該記住:width和height只能設置盒子中內容的寬度和高度,盒子的實際高度和寬度應該加上border和padding。DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Css盒子模型</title> <meta name="keywords" content="key1, key2"> <meta name="description"
  • HTML+CSS實戰系列——盒模型製作
    4)Content(內容) - 盒子的內容,顯示文本和圖像。如果把盒子模型看作是一個生活中的快遞,那麼內容部分等同於你買的實物,內邊距等同於快遞盒子中的泡沫,邊框等同於快遞盒子,外邊距等同於兩個快遞盒子之間的距離。
  • CSS學習筆記總結
    直接將css代碼書寫head標籤內style:專門用來放置css代碼進入此標籤內語法改變為css語法type:MIME數據類型,此數據類型囊括了數十種後綴名,專門用來提示瀏覽器按照何種語法解析因為在h5技術中
  • DIV+CSS學習筆記總結篇:盒子模型和塊元素、行元素與溢出
    第十三章 盒子模型盒子模型:盒子模型就是一個有高度和寬度的矩形區域所有html標籤都是盒子模型div標籤自定義盒子模型所有的標籤都是盒子模型class和id的主要差別是:class用於元素組(類似的元素,或者可以理解為某一類元素
  • CSS語法與規則 — 重學CSS
    我們在前面的課程中講學習方法的部分也講過,要想建立知識體系骨架,我們需要一個完備性更權威,更全的線索。但是 CSS 現在標準的狀態非常複雜,所以我們沒有辦法找到一份像 JavaScript 或者 HTML 中比較完備的現形標準,能把 CSS 的一切都濃縮在內。
  • 面試題:介紹一下盒子模型
    CSS 中的盒子模型有兩種類型,一種是 content-box,內容盒子,一種是 border-box 邊框盒子,通過 css 屬性 box-sizing 來設置。這兩種盒子計算寬高的方式不一樣。我們先來看一下 content-box 。
  • 《精通CSS》第5章 漂亮的盒子
    《精通 CSS》往期陪讀章節:今天我們要閱讀的章節是《精通 CSS》的第五章 漂亮的盒子。前面我們了解過了盒模型,知道盒子由外邊距、邊框、內邊距和內容區組成。除此之外,半徑還可以使用關鍵字,closest-side表示最近的邊,farthest-side表示最遠的邊,closest-corner表示最近的角,farthest-corner表示最遠的角(默認值)。漸變的起始位置類似於backgound-positon 在第一組值中用at表示,默認為居中。
  • 【專欄試讀】(07)CSS 基本視覺格式化:① 「塊盒子」格式化 | CSS
    本篇我們將闡述最基本的理論知識,將「盒子」的方方面面一步步帶到你的跟前。1 什麼是「盒子」「盒子 box」由 CSS 引擎根據文檔中的內容所創建,主要用於文檔元素的格式化、定位和布局等。盒子與元素並不是一一對應的,有時多個元素會合併生成一個盒子,有時一個元素會生成多個盒子(如匿名盒子)。
  • HTML+CSS:認識css的概念與語法,了解css的優勢
    之前的文章給大家介紹了下網頁中常用的html的基本知識,從這篇文章開始我們開始介紹css的內容。可以這麼說學完了html你可以做出網頁的框架,學好了css之後呢,你就可以給做好的框架進行美化填色,做出各種各樣的網頁。
  • HTML CSS整理筆記
    ———6 盒子模型———39.盒子模型的組成:content網頁內容、border邊框、padding內邊距、margin外邊距(1)邊框border:  border-color 邊框顏色:如border-color:#369 #000 #111 #F00;按「上右下左順時針」設置  border-width 邊框粗細
  • css的基本語法
    css的基本語法有哪些?下面專業網站開發公司深圳市博納網絡信息技術有限公司講解:CSS語法規則主要由兩部分構成,一個是選擇器,另一個是一條或多條聲明。選擇器通常是需要改變樣式的HTML元素。在設置顏色的值時,可以使用css允許的引文單詞,如red、green、blue等,還可以使用十六進位顏色值如下所示:hl {color:#ffoooo}或者使用css的縮寫形成,如下所示:hl {color:#foo}或者使用rgb顏色值,如下所示
  • 一文了解CSS clear both清除浮動
    二、clear語法與結構1. clear語法clear : none | left|right| both2. clear參數值說明屬性描述none允許兩邊都可以有浮動對象bot不允許有浮動對象left不允許左邊有浮動對象right不允許右邊有浮動對象3. clear解釋該屬性的值指出了不允許有浮動對象的邊情況,對象左邊不允許有浮動
  • 一篇文章帶你了解css z-index(重疊順序)
    從基礎語法到應用案例教程講解學習z-index。一、z-index語法與結構z-index 跟具體數字通常CSS讓不同的對象盒子以不同順序重疊排列,CSS就是要z-index樣式屬性。三、案例1.  z-index重疊順序案例為了方便觀察,設置3個DIV盒子,分別設置不同css背景顏色,設置相同CSS高度、CSS寬度。
  • 一篇文章帶你了解CSS clear both清除浮動
    二、clear語法與結構1. clear語法clear : none | left|right| both2. clear參數值說明屬性描述none允許兩邊都可以有浮動對象bot不允許有浮動對象left不允許左邊有浮動對象right不允許右邊有浮動對象
  • CSS面試須知,哪些需要掌握得CSS技巧
    1 介紹一下標準的CSS的盒子模型?與低版本IE的盒子模型有什麼不同的?標準盒子模型:寬度=內容的寬度(content)+ border + padding + margin低版本IE盒子模型:寬度=內容寬度(content+border+padding)+ margin2 box-sizing屬性?
  • Css語法特點是什麼?Css和html、javascript的關係是什麼?
    CSS是英文Cascading Style Sheets首字母的簡寫,翻譯成中文是層疊樣式表,簡單理解它是html語言的一個應用,css可以修飾各種動態和靜態頁面,對頁面中的元素進行精準控制(是像素為單位的),css的誕生是為了解決html的顯示功能,它解決了html顯示雜亂和臃腫的問題
  • 前端Web-CSS語法全解1
    CSS概述(1)CSS概念: 層疊樣式表(Cascading Style Sheets)css可以用來為網頁創建樣式表,通過樣式表可以對網頁進行裝飾。但是由於直接將css代碼寫到了html標籤的內部,導致結構與表現耦合,同時導致樣式不能夠復用,所以這種方式我們不使用。(2)內部樣式表:<head>標籤內定義<style>標籤,<title>標籤後面。
  • 面試必備 css面試必考點
    1 介紹一下標準的CSS的盒子模型?與低版本IE的盒子模型有什麼不同的?標準盒子模型:寬度=內容的寬度(content)+ border + padding + margin低版本IE盒子模型:寬度=內容寬度(content+border+padding)+ margin2 box-sizing屬性?