简单的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%;
}

html5前端开发笔记-个人中心的更多相关文章

  1. 前端开发笔记(1)html基础

    HTML介绍 HTML是HyperTextMarkupLanguage超文本标记语言的缩写 HTML是标记语意的语言 编辑器 任何纯文本编辑器都能够编辑html,比如记事本,editplus,note ...

  2. web前端开发笔记(2)

    一.什么是作用域. 所有变量都存在于一个执行环境中(也称作用域),这个执行环境决定了变量的生命周期,以及哪一部分代码可以访问其中的变量.总结: 执行环境有全局执行环境和函数执行环境. 每次进入一个新执 ...

  3. web前端开发笔记(1)

     一.HTML标签书写有哪些规范? 页面编码. 文档声明. 关键字与描述. 行内元素不能包含块级元素. a标签不能嵌套a标签. 标签名和属性必须用小写字母书写,属性必须加引号,标签必须闭合,单标签页必 ...

  4. 前端开发笔记(2)css基础(上)

    CSS介绍 层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言.CSS ...

  5. 前端开发笔记(3)css基础(中)

    上一篇中我们学习了html的标准文档流,下面我们先来看看如何脱离标准流. 脱离标准流 css中一共有三种方法脱离标准流 浮动 绝对定位 固定定位 浮动 我们要搞清楚什么是浮动,先来看一个标准文档流的例 ...

  6. html5引擎开发 -- 引擎消息中心和有限状态机 - 初步整理 一

    一 什么是有限状态机        FSM (finite-state machine),又称有限状态自动机,简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型.他对于逻辑以及 ...

  7. MOOC web前端开发笔记(一)

    网站和网页 网站 互联网上用于展示特定内容的相关网页的集合. 网页 网站中的一页,一个网站中的网页通过"超链接"的方式被组织在一起. 主页 进入网站看到的第一个网页,主页的文件名通 ...

  8. 今天再给大家带点html5前端开发的干货模板“text/tpl”怎么用 script template怎么用

    text/tpl 顾名思义就是模板,其实和C++模板函数类似的作用,就是利用他生成一个HMTL内容,然后append或者替换html里面 有什么好处,假如后端返回来的数据都是一样的,但是需要生成不同的 ...

  9. 资料,来自HTML5前端开发学习⑤群

    resource HTML5+CSS3视频教程:http://pan.baidu.com/s/1hsyOjze 密码:c3uw JavaScript视频教程:链接:http://pan.baidu.c ...

随机推荐

  1. Asp.Net中JSON的序列化和反序列化-----JavaScriptSerializer ,加上自己工作心得

    在工作中和手机通信用到web服务和javascriptSerializer,返回json数据,供手机端调用,一开始返回的数据是一大堆,比如 [{"word_picture9":&q ...

  2. Android-隐式Intent

    隐式Intent表示不具体明确要打开的activity,利用隐式intent我们可以打开其他应用. 一个隐式intent的主要组成部分: 1.action 要执行的操作. 通常以intent类的常量表 ...

  3. java Math.random()随机数的产生

    Math.random()是java内置产生随机数的函数,Math.random()能够产生[0,1)的浮点数,当我们要产生特定范围的数时,可以采用如下办法: 1.Math.random()*(最大数 ...

  4. IOS网络开发实战(一)

      1 局域网群聊软件 1.1 问题 UDP协议将独立的数据包从一台计算机传输到另外一台计算机,但是并不保证接受方能够接收到该数据包,也不保证接收方所接收到的数据和发送方所发送的数据在内容和顺序上是完 ...

  5. OpenCV——ANN神经网络

    ANN-- Artificial Neural Networks 人工神经网络 //定义人工神经网络 CvANN_MLP bp; // Set up BPNetwork's parameters Cv ...

  6. 浅析 JavaScript 组件编写

    之前因项目需要也编写过一些简单的JS组件,大多是基于JQuery库的,一直也没有过总结,导致再次写到的时候还去Google, 近日看到一个文章总结的挺好,拿过整理一下做个备忘. 此次同样是基于jque ...

  7. Bootstrap学习笔记(未整理)

    强调class 这些class通过颜色来表示强调.也可以应用于链接,当鼠标盘旋于链接上时,其颜色会变深,就像默认的链接样式. <p class="text-muted"> ...

  8. [Python shelve模块Error]bsddb.db.DBPageNotFoundError: (-30986, 'DB_PAGE_NOTFOUND: Requested page not found')

    在用scrapy抓数据,用shelve保存时出现了这个Error,目标是储存一串unicode字符串组成的列表,exception代码是tempbase['joke']=joke_list,测试只要j ...

  9. mongoexport导出数据

    mongoexport用法: /***** Export MongoDB data to CSV, TSV or JSON files.options:  --help                 ...

  10. Android使用xml中定义的动画效果

    Animation animation = AnimationUtils.loadAnimation(getActivity(), R.anim.zqrl_out); animation.setFil ...