css3盒模型
彈性盒模型
在使用彈性盒模型的時候 父元素必須要加display:box 或者display:inline-box。
box-orient定義盒模型的佈局方向
- horizontal 水平顯示
- vertical 垂直方向
box-direction 元素排列順序
- normal 正序
- reverse 反序
box-ordinal-group 設定元素的具體位置
box-flex 定義盒子的彈性空間
子元素的尺寸= 盒子的尺寸*(子元素的box-flex屬性值/所有子元素的box-flex屬性值的和)
box-pack 對盒子富裕的空間進行監管
- start 所有子元素在盒子左側顯示,富裕空間在右側。
- end 所有子元素在盒子右側顯示,富裕空間在左側。
- center 所有子元素居中。
box-algin 在垂直方向上對元素的位置進行監管
- start 所有子元素局頂
- end 所有子元素局底
- center 所有子元素垂直居中。
box-shadow:[inset] x y blur [spread] color
inset: 投影方向
inset:內投影
預設外投影x、y:陰影偏移
- blur:模糊半徑
- spread 擴充套件陰影半徑,先擴充套件原有形狀,再畫陰影
color 顏色
box-reflect 倒影(目前僅webkit瀏覽器支援)
<style type="text/css">
body {background: #000;}
img{display: block; margin: 100px auto; -webkit-box-reflect: right 10px -webkit-linear-gradient(right, rgba(0,0,0,1) 0, rgba(155,155,155,0.4) 100%);}
}
</style>
<body>
<img src="hello.png">
</body>
- direction 方向 above|below|left|right
- 距離 (可選)
- 漸變 (可選 -webkit-linear-gradient(right, rgba(0,0,0,1) 0, rgba(155,155,155,0.4) 100%);)
resize 自由縮放
- both 水平垂直都可以縮放
- horizontal 只有水平方向可以縮放
- vertical 只有垂直方向可以縮放
- 一定要配合overflow:auto 一塊使用
box-sizing 盒模型解析模式
content-box 標註盒模型
width/height =content+ border+padding
border-box 怪異盒模型
width/height = content-padding-border
下面是示例
-webkit-box-pack:justify效果
程式碼
<style type="text/css">
.box {height: 100px; border: 10px dashed #000; padding: 10px;display: -webkit-box; -webkit-box-orient:horizontal; -webkit-box-pack:justify;}
.box div {height: 100px; width: 100px; background: red;border: 1px solid #fff; }
</style>
</head>
<body>
<div class="box">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
box-shadow結合偽類before和after製作翹邊陰影
程式碼
<!-- css部分 -->
body{font-family:Arial;
font-size:23px;}
.wrap h3{
text-align:center;
position:relative;
top:80px;
}
.wrap {
width:70%;
height:200px;
background:#FFF;
margin:40px auto;
}
.effect{
position:relative;
-webkit-box-shadow:0 1px 4px rgba(0, 0, 0, 0.3) , 0 0 40px rgba(0, 0, 0, 0.1) inset;
-moz-box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0px 0px 40px rgba(0, 0, 0, 0.1) inset;
}
.effect:before, .effect:after{
content:"";
position:absolute;
z-index:-1;
-webkit-box-shadow:0 0 20px rgba(0,0,0,0.8);
-moz-box-shadow:0 0 20px rgba(0,0,0,0.8);
box-shadow:0 0 20px rgba(0,0,0,0.8);
top:50%;
bottom:0;
left:10px;
right:10px;
-moz-border-radius:100px / 10px;
border-radius:100px / 10px;
}
ul.box {
width:980px;
height:auto;
margin: 20px auto;
padding: 0;
clear: both;
overflow: hidden;
}
ul.box li {
list-style-type: none;
margin:20px 10px;
padding: 0;
width: 300px;
height: 220px;
border: 2px solid #efefef;
position: relative;
float: left;
background: #ffffff; /* old browsers */
line-height:220px;
font-size:32px;
text-align:center;
-webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.1) inset;
-moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.1) inset;
-o-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.1) inset;
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.1) inset;
}
ul.box li:before {
z-index: -2;
position: absolute;
background: transparent;
width: 90%;
height: 80%;
content: '';
left: 20px;
bottom:8px;
-webkit-transform: skew(-12deg) rotate(-4deg);
-moz-transform:skew(-12deg) rotate(-4deg);
-o-transform: skew(-12deg) rotate(-4deg);
-ms-transform: skew(-12deg) rotate(-4deg);
-webkit-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);
-moz-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);
-o-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);
}
ul.box li:after {
z-index: -1;
position: absolute;
background: transparent;
width: 90%;
height: 80%;
content: '';
right:20px;
bottom:8px;
-webkit-transform: skew(12deg) rotate(4deg);
-moz-transform:skew(12deg) rotate(4deg);
-o-transform: skew(12deg) rotate(4deg);
-ms-transform: skew(12deg) rotate(4deg);
-webkit-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);
-moz-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);
-o-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);
box-shadow: 0 8px 16px rgba(0, 0, 0, 0.6);
}
.box li img{
width:290px;
height:210px;
padding:5px;
}
<!-- html -->
<div class="wrap effect">
<h3>Shadow Effect</h3>
</div>
<ul class="box">
<li><img src="images/photo1.jpg"/></li>
<li><img src="images/photo2.jpg"/></li>
<li><img src="images/photo3.jpg"/></li>
</ul>
相關文章
- 標準盒模型和怪異盒模型模型
- “盒模型”初探模型
- CSS盒模型CSS模型
- css 盒模型CSS模型
- 盒模型-深入理解盒模型及相關概念模型
- 精通CSS盒模型CSS模型
- 盒模型與BFC模型
- css之盒模型CSS模型
- CSS盒模型深入CSS模型
- css-盒模型CSS模型
- 盒模型舉例模型
- css&&js盒模型CSSJS模型
- CSS盒模型詳解CSS模型
- 詳解CSS盒模型CSS模型
- 前端面試之盒模型前端面試模型
- 彈性盒模型Flex指南模型Flex
- CSS的兩種盒模型CSS模型
- day02-layout盒模型模型
- css盒子模型與盒模型的浮動CSS模型
- 彈性盒模型,flex佈局模型Flex
- 深入理解盒模型與BFC模型
- 前端面試2:CSS盒模型前端面試CSS模型
- CSS系列 (04):盒模型詳解CSS模型
- 一張圖秒懂js盒模型JS模型
- 第 16 章 CSS 盒模型[上]CSS模型
- 第 16 章 CSS 盒模型[下]CSS模型
- 004-盒模型及文字溢位模型
- Css規範整理:2、css盒模型CSS模型
- 關於盒模型相關的問題模型
- css佈局系列1——盒模型佈局CSS模型
- 深究盒模型的margin合併問題模型
- 好程式設計師web前端分享CSS3彈性盒程式設計師Web前端CSSS3
- 【面試必備】CSS盒模型的點點滴滴面試CSS模型
- 對IE6下盒模型的誤解模型
- css盒模型 content-box border-boxCSS模型
- CSS定位問題(1):盒模型、浮動、BFCCSS模型
- 盒模型理解及基本選擇器初識模型
- 拆盒玩家NFT盲盒系統模型開發丨dapp丨Defi丨NFT模型APP