使用html5,css,實現品字形佈局

html,body{
	margin:0;
	padding:0;
}

div:first-child{
	
	width:100%;
	height:100%;
	background:red;
}

如果這樣寫的話div的height:100%;是無效的,需要在html,body中加入  height:100%:或者div:first-child中加入position:absolute;div中的height:100%;纔有效

如果不在前面聲明<!DOCTYPE html>的話兩個都不寫也行


實現品字形佈局代碼

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>品字形佈局</title>
</head>
<style>
html,body{
	margin:0;
	padding:0;
	height:100%;
}
div:first-child{
	/*position:absolute; 	兩者二選一,*/
	width:100%;
	height:calc(100% - 200px);
	background:red;
}
div:nth-child(2){
	position:fixed;
	width:50%;
	height:200px;
	background:green;
	bottom:0;
	left:0;
}
div:nth-child(3){
	position:fixed;
	width:50%;
	height:200px;
	background:yellow;
	bottom:0;
	right:0;
}
</style>
<body>
<div></div>
<div></div>
<div></div>
</body>
</html>


calc 使用時 + -號前後需要有空格

表達式中有“*”和“/”時,其前後可以沒有空格,但建議留有空格。

<span style="font-family: Arial, Helvetica, sans-serif;">calc(100%  -  200px);</span>
calc(1rem  +  2%);
calc(1px  +  1em  -  2rem);

calc()的運用


爲了解決撐破容器的問題,以前我們只能去計算div.box的寬度,用容器寬度減去paddingborder的值,但有時候,我們苦於不知道元素的總寬度,比如說是自適應的佈局,只知道一個百分值,但其他的值又是px之類的值,這就是難點,死卡住了。隨着CSS3的出現,其中利用box-sizing來改變元素的盒模型類型實使實現效果,知道總寬度是100%,在這個基礎上減去boder的寬度(5px * 2 = 10px,在減去padding的寬度(10px * 2 = 20px),即"100% - (10px + 5px) * 2 = 30px" ,最終得到的值就是div.boxwidth




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