前端開發系列(十一)CSS教程(6)

一、CSS盒模型

1.1、元素分類

在講解 CSS 佈局之前,我們需要提前知道一些知識,在 CSS 中,html 中的標籤元素大體被分爲三種不同的類型:塊狀元素內聯元素(又叫行內元素)和內聯塊狀元素
常用的塊狀元素有:<div>、<p>、<h1>...<h6>、<ol>、<ul>、<dl>、<table>、<address>、<blockquote> 、<form>
常用的內聯元素有: <a>、<span>、<br>、<i>、<em>、<strong>、<label>、<q>、<var>、<cite>、<code>
常用的內聯塊狀元素有: <img>、<input>

1.2、元素分類--塊級元素

什麼是塊級元素?在 html<div>、 <p>、<h1>、<form>、<ul> 和 <li>就是塊級元素。設置 display:block 就是將元素顯示爲塊級元素。如下代碼就是將 內聯元素a 轉換爲塊狀元素,從而使 a元素 具有 塊狀元素 特點。a{display:block;}
塊級元素特點:
1、 每個塊級元素都從新的一行開始,並且其後的元素也另起一行。(真霸道,一個塊級元素獨佔一行)
2、 元素的高度、寬度、行高以及頂和底邊距都可設置。
3、 元素寬度在不設置的情況下,是它本身父容器的 100%(和父元素的寬度一致),除非設定一個寬度。

代碼示例:

<!DOCTYPE HTML>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
		<title>內聯塊狀元素</title>
		<style type="text/css">
			div,p{
				background:pink;
			}
		</style>
	</head>
	<body>
		<div>我的夢想</div>
		<div>我的夢想</div>
		<p>我的夢想</p>
	</body>
</html>

運行結果:
在這裏插入圖片描述

1.3、元素分類--內聯元素

html 中,<span>、<a>、<label>、 <strong><em>就是典型的內聯元素(行內元素)(inline)元素。當然塊狀元素也可以通過代碼display:inline 將元素設置爲內聯元素。如下代碼就是將塊狀元素 div 轉換爲內聯元素,從而使 div 元素具有內聯元素特點。div{display:inline;}
內聯元素特點:
1、 和其他元素都在一行上;
2、 元素的高度、寬度及頂部和底部邊距不可設置;
3、 元素的寬度就是它包含的文字或圖片的寬度,不可改變。

代碼示例:

<!DOCTYPE HTML>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
		<title>行內元素標籤</title>
		<style type="text/css">
			a,span,em{
				background:pink; /*設置a、span、em標籤背景顏色都爲粉色*/
			}
		</style>
	</head>
	<body>
		<a href="http://www.baidu.com">百度</a>
		<span>我的夢想</span>
		<span>我的夢想</span>
		<em>我的夢想</em>
	</body>
</html>

運行結果:
在這裏插入圖片描述

1.4、元素分類--內聯塊狀元素

內聯塊狀元素(inline-block) 就是同時具備內聯元素、塊狀元素的特點,代碼 display:inline-block 就是將元素設置爲內聯塊狀元素。(css2.1新增),<img>、<input> 標籤就是這種內聯塊狀標籤。
inline-block 元素特點:
1、 和其他元素都在一行上;
2、 元素的高度、寬度、行高以及頂和底邊距都可設置。

代碼示例:

<!DOCTYPE HTML>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
		<title>內聯塊狀元素</title>
		<style type="text/css">
			a{
				display:inline-block;
				width:200px;       /*在默認情況下寬度不起作用*/
				height:20px;        /*在默認情況下高度不起作用*/
				background:pink;   /*設置背景顏色爲粉色*/
				text-align:center; /*設置文本居中顯示*/
			}
		</style>
	</head>
	<body>
		<a>我的夢想</a>
		<a>我的夢想</a>
		<a>我的夢想</a>
		<a>我的夢想</a>
	</body>
</html>

運行結果:
在這裏插入圖片描述

1.5、什麼是盒模型

通過圖片來描述:padding內邊距

在這裏插入圖片描述
通過圖片來描述:margin外邊距
在這裏插入圖片描述
通過圖片來描述:border盒子的邊框
在這裏插入圖片描述
通過圖片來描述:padding的4個方向
在這裏插入圖片描述

1.6、盒模型--邊框(一)

盒子模型的邊框就是圍繞着內容及補白的線,這條線你可以設置它的 粗細樣式顏色 ( 邊框三個屬性 )。
注意:
1、border-style(邊框樣式)常見樣式有:
        dashed(虛線)| dotted(點線)| solid(實線)。
2、border-color(邊框顏色)中的顏色可設置爲十六進制顏色,如:
        border-color:#888;       //前面的井號不要忘掉。
3、border-width(邊框寬度)中的寬度也可以設置爲:
        thin | medium | thick(但不是很常用),最常還是用像素(px)。

代碼示例:

<!DOCTYPE HTML>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
		<title>邊框</title>
		<style type="text/css">
			p{
				border:2px dotted #ccc;
			}
		</style>
	</head>
	<body>
		<h1>我的夢想</h1>
		<p>我的夢想</p>
	</body>
</html>

運行結果:
在這裏插入圖片描述

1.7、盒模型--邊框(二)

現在有一個問題,如果有想爲 p 標籤 單獨設置下邊框,而其它三邊都不設置邊框樣式怎麼辦呢?css 樣式 中允許只爲一個方向的邊框設置樣式:div{border-bottom:1px solid red;}

代碼示例:

<!DOCTYPE HTML>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
		<title>邊框</title>
		<style type="text/css">
		li{
			border-bottom:1px dotted #ccc;
		}
		</style>
	</head>
	<body>
		<ul>
			<li>別讓不會說話害了你</li>
			<li>二十七八歲就應該有的見識</li>
			<li>別讓不好意思害了你</li>
		</ul>
	</body>
</html>

運行結果:
在這裏插入圖片描述

1.8、盒模型--寬度和高度

盒模型寬度和高度和我們平常所說的物體的寬度和高度理解是不一樣的,css 內定義的寬(width)和高(height),指的是填充以裏的內容範圍。
因此一個元素實際寬度(盒子的寬度)= 左邊界+左邊框+左填充+內容寬度+右填充+右邊框+右邊界。
在這裏插入圖片描述

代碼示例:

<!DOCTYPE HTML>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
		<title>寬度和高度</title>
		<style type="text/css">
			li{
				border-bottom:1px SOLID RED;
				width:200px;
				height:30px;
			}
		</style>
	</head>
	<body>
		<ul>
			<li>別讓不會說話害了你</li>
			<li>十七八歲就應該有的見識</li>
			<li>別讓不好意思害了你</li>
		</ul>
	</body>
</html>

運行結果:
在這裏插入圖片描述

1.9、盒模型--填充

元素內容與邊框之間是可以設置距離的,稱之爲“填充”。填充也可分爲上、右、下、左(順時針)。如下代碼:div{padding:20px 10px 15px 30px;}
如果上、右、下、左的填充都爲10px;可以這麼寫:div{padding:10px;}
如果上下填充一樣爲10px,左右一樣爲20px,可以這麼寫:div{padding:10px 20px;}

代碼示例:

<!DOCTYPE HTML>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
		<title>填充</title>
		<style type="text/css">
			#box1{
				width:20px;
				height:20px;
				padding:20px;
				border:1px solid red;
			}
		</style>
	</head>
	<body>
		<div id="box1">中</div>
	</body>
</html>

運行結果:
在這裏插入圖片描述

1.10、盒模型--邊界

元素與其它元素之間的距離可以使用邊界 (margin) 來設置。邊界也是可分爲上、右、下、左。如下代碼:div{margin:20px 10px 15px 30px;}

代碼示例:

<!DOCTYPE HTML>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
		<title>邊距</title>
		<style type="text/css">
			div{
				width:100px;
				height:100px;
				border:1px solid red;	
			}
			#box1{margin-bottom:10px;}
		</style>
	</head>
	<body>
		<div id="box1">box1</div>
		<div id="box2">box2</div>   
	</body>
</html>

運行結果:
在這裏插入圖片描述


此篇博客代碼下載地址:CSS教程6代碼下載
博主的所有博客目錄如下:博客文章目錄彙總
Java面試部分的博客目錄如下:Java筆試面試目錄

轉載請標明出處,原文地址:https://blog.csdn.net/weixin_41835916 如果覺得本文對您有幫助,請點擊支持一下,您的支持是我寫作最大的動力,謝謝。
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章