简单的css自适应
PC端
***
移动端
***
一开始的想法就是模仿手机APP 的页面进行布局,首先得有个头部,然后是主题部分,然后加上2个按钮,分别是编辑和退出登录。先布出基本结构。
代码如下:
<!DOCTYPE html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=0,maximum-scale=1.0,minimun-sacle=1.0"><meta http-equiv="Cache-Control" content="no-siteapp"><meta http-equiv="Cache-C ontrol" content="no-transform"><link rel="stylesheet" href="style.css"><title>个人中心</title></head><body><header> <p>个人中心</p> </header> <div class="content"> <div class="detail"> [站外图片上传中……(1)] <ul class="block"> <li>姓名:</li> <li>性别:</li> <li>手机:</li> <li>学校:</li> <li>个人简介:这个地方文字超出范围之外会自动把容器div撑开,注意不是中文字符的话 需要加CCS属性word-wrap:break-word,这是CCS3的属性。</li> </ul> </div><div class="edit"> <a href="###">编辑</a></div><div class="login-out"> <a href="###">退出</a></div><footer> </footer></body>
由于采用的是流体布局,所以head部分需要加入这句声明
<meta name="viewport" content="width=device-width, initial-scale=1.0,user-scalable=0,maximum-scale=1.0,minimun-sacle=1.0"> //声明宽度等于设备宽度,禁止用户缩放<meta http-equiv="Cache-Control" content="no-siteapp">//禁止百度转码<meta http-equiv="Cache-Control" content="no-transform">//禁止百度转码
这时候的效果如下
对于头部:
我们需要做的是:文字居中,方法是将文字用p标签标记起来,设置text-align在水平方向居中,通过调整line-height在竖直方向上居中,给予背景色,这里使用的是em单位,1em=16px,这是方便做流体布局的时候缩放计算的。对于配色整体的思路是一个底色,各个部分设置solid 的borde来形成扁平化的效果。
css代码如下:
header{width: 100%;height: 3em;background-color: #00A2CA;}header p{text-align: center;line-height:3em;}
主体:
首先应该先把边距都清掉,即body的margin和padding都为零,
然后主体用一个容器div包容起来(content),这是之前很老的写法了。当然了没有这个也可以。然后个人信息部分,这里是重点,如何让头像固定的情况下让头像div和信息div在同一行,使用浮动或者定位的话会导致当个人信息的文字多了以后,会超出div容器,这时候如果设置detail的heig为auto的话是无效的,它没法把他撑开的。原因是浮动和定位都会导致该元素脱离文档流。除了一种情况,相对定位。
解决方法如下:
对ul个人信息部分:display:inline-block
调整margn-left使它不遮挡住img,然后img浮动或者定位都可以。主要是要保证ul在容器内。
另外,ing不能被缩放,对其设置固定宽高即可。
完整CSS代码如下:
@charset "utf-8";body{margin: 0;padding: 0;background-color: #EEEEEE;font-family: 微软雅黑;}ul{list-style: none;margin: 0 0 0 7.5em;padding: 0;}header{width: 100%;height: 3em;background-color: #00A2CA;}header p{text-align: center;line-height:3em;}.content{width: 100%;background-color: #EEEEEE;}.detail{background-color: #FFFFFF;height: auto;margin-top:1em; padding: 10px;position: relative;}.edit{background-color: #FFFFFF;height: 2em;width: 100%;margin-top:1em;clear: both;}.login-out{background-color: #FFFFFF;height: 2em;width: 100%;margin-top:0.1em;margin-bottom: 0.5em;}.footer{width: 100%;height:2em;background-color: rgb(75,75,75);}img{width: 100%;height: 100%;height: 7em;width: 7em;border: 1px solid grey;position: absolute;top: 0.5em;left: 0.5em;}a{text-decoration: none;display: inline-block;height: 2em;text-align: center;width: 100%;line-height: 2em;color: black;}.block{display: inline-block;height: auto;word-wrap:break-word;width: 50%;}