应用场景:一个页面的内容不够长的话,页脚内容会自动固定在页面底部,当页面内容够长的话,页脚内容自己向下推动。
这个时候如果运用fixed布局的话 ,页脚内容会一直固定在底部,所以这个时候会应用到Sticky footer 布局。
下面是一种我常用的方式:
效果图:
内容不够固定底部内容: 内容够多自动下移:
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>user</title>
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<style type="text/css">
html,body {
font-family: "microsoft yahei,arial, helvetica, sans-serif";
}
*{
box-sizing: border-box;
}
.btn{
font-size: 14px;
font-weight: 400;
line-height: 1.42;
position: relative;
display: inline-block;
margin-bottom: 0;
padding: 3px 12px;
cursor: pointer;
-webkit-transition: all;
transition: all;
-webkit-transition-timing-function: linear;
transition-timing-function: linear;
-webkit-transition-duration: .2s;
transition-duration: .2s;
text-align: center;
text-decoration: none;
vertical-align: top;
white-space: nowrap;
color: #333;
border: 1px solid #ccc;
border-radius: 3px;
border-top-left-radius: 3px;
border-top-right-radius: 3px;
border-bottom-right-radius: 3px;
border-bottom-left-radius: 3px;
background-color: #fff;
background-clip: padding-box;
}
.btn-success{
color: #fff;
border: 1px solid #4cd964;
background-color: #4cd964;
letter-spacing: 1px;
}
.mui-btn-block{
font-size: 18px;
display: block;
padding: 10px 0;
}
.clearfix{
display: inline-block;
}
.clearfix:before{
display: table;
clear: both;
}
.clearfix:after{
display: table;
content: "";
height: 0;
clear: both;
visibility: hidden;
}
.sticky-box{
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgb(51,51,51);
}
.box-body{
min-height: 100%;
width: 100%;
}
.body-main{
padding: 15px;
padding-bottom: 80px;
}
.box-footer{
position: relative;
padding: 15px;
margin-top: -80px;
clear: both;
}
h3{
margin: 0;
padding: 2rem 0;
text-align: center;
color: #fff;
font-size: 22px;
letter-spacing: 1px;
}
.text-box{
text-align: center;
color: #fff;
}
.info-box{
padding: 1rem 1.5rem;
margin: .5rem .5rem 2rem;
background-color: #232323;
font-size: 14px;
border-radius: 100px;
-moz-border-radius: 100px;
-webkit-border-radius: 100px;
box-shadow: inset 0 5px 10px -5px #191919, 0 1px 0 0 #444;
-moz-box-shadow: inset 0 5px 10px -5px #191919,0 1px 0 0 #444;
-webkit-box-shadow: inset 0 5px 10px -5px #191919, 0 1px 0 0 #444;
}
.info-box p{
margin: 0;
line-height: 1.5;
text-align: left;
font-size: 12px;
color: #fff;
}
</style>
</head>
<body>
<div class="sticky-box">
<div class="box-body clearfix">
<div class="body-main">
<h3>CSS Sticky Footer</h3>
<div class="text-box">
<p>内容如果很多的话</p>
<p>内容如果很多的话</p>
<p>内容如果很多的话</p>
<p>内容如果很多的话</p>
<p>内容如果很多的话</p>
</div>
<div class="info-box">
<p>提示文字:我下方是一个在内容不够使固定在底部,在内容多出时,自动下移的按钮</p>
</div>
</div>
</div>
<div class="box-footer">
<a href="javascript:;" class="btn btn-success mui-btn-block">我是一个按钮</a>
</div>
</div>
</body>
</html>