关于H5填写信息类页面横向布局总结
接触h5已经有快一年了,因为一直偏向页面重构所以在页面布局方面也算是经历过风风雨雨。所以总结一下自己用过的方法来比较归纳
首先来说,H5的页面一般分为两种,一种是用来做市场营销的,主要特征是图多,页面较花哨图片较多,一种是功能页,功能页顾名思义主要职能还是功能一般也是分为两种:展示类和填写类。今天主要说一下功能页的填写类页面
填写类的页面一般会涉及三个部分:页面标题,form表单以及提交按钮
页面标题&form表单
其实页面标题和form表单一样,一般的布局是左中右,即主页-标题-返回等等,当然也有就只有标题的,这种就不做过多的介绍,下面主要说一下三栏布局
三栏布局实现起来的难点其实不在于如何一栏放三个元素也不在于如何让三个元素按照 靠左、 居中、靠右的方式排列,而是如果中间的一栏如果是一个input框,如何让这个input框可以充满中间部分
为什么要这么说呢
如果只是要三个元素都排在一起这个是很简单的,我可以都float,之后清除浮动就可以了。但是一旦都float起来,元素的宽度就变成了包含元素内容的宽度,即便是让其display:block依然不能挽回
然后这个时候,我们的重点要登场了,对,flex,这个flex是个好东西实现了伸缩布局。什么叫做伸缩布局?就拿我们的三个元素横排来说,我们的首项和尾项其实宽度是固定的,但是我们的中间项我们希望他可以充满中间的位置
这个就是我们说的伸缩布局。而且,这样一来不仅横向还有纵向,比如我们的表单下方是个提交按钮,我们希望它一直都在屏幕下方,但是表单又不会长度那么刚好那怎么办呢?对,用我们的flex,什么position:fixed/absolute在flex 面前简直就是歪门邪道。不过这个flex也不是省油的灯,前后出了三版应该是,我现在用的是第二版即display:box搭配flex:1,加完浏览器前缀兼容性可谓什么妖魔鬼怪什么美女画皮什么刀枪火海什么阴谋诡计都挡不住我的flex的如意棒 遣送bug朝西去,抱歉有点high,总之就是好用的不得了;但是鉴于时代在发展,社会在进步,没准哪天第二版会被完全淘汰,还是第二版(display:box)与第三版(display:flex)结合写方是上策。
flex如何使用百度一下你就知道,只强调一下不管是纵向还是横向伸缩,请确保伸缩对象的父容器伸缩的范围是100%,即height:100%/width:100%,尤其是纵向布局需要把heml,body均height:100%才能奏效哦~
好,接下来说一下我今天新发现的一种布局方式,前方高能,注意把控好你的情绪,表太激动哦~
先来代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>使用table-cell</title>
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=0"/>
<style>
body {
background-color: #80ff80;
padding: 0;
margin: 0;
}
.child {
display: table-cell;
vertical-align: middle;
word-wrap: break-word;
word-break: break-all;
white-space: nowrap;
} .container {
padding: 10px 15px;
display: block;
background-color: #fff;
border-bottom: 1px solid #eee;
} .middle {
width: 10000px;
} </style>
</head>
<body>
<article>
<div class="container">
<div class="child">icon</div>
<div class="child middle">
<p>标题文字</p>
</div>
<div class="child">
<p>
说明文字
</p> </div>
</div> </article> </body>
</html>
对,就是table-cell;父元素不用搞那么磨磨唧唧,直接就子元素table-cell;中间的元素给一个看似实现不了的较大的一个宽度;要注意子元素们一定要写不换行的css,不然最右边的元素会竖直显示就像在table布局中一样,无论怎么挤,只要宽度可以包含那就都给你放里面,实在。所以为了保证右边的元素横向显示的逼格,让他不能换行就美丽新世界了~
嗯,此处应该有掌声~
因为还有别的开发任务先就写这一个点,其他布局会找时间再更新,客官你莫急哦~
关于H5填写信息类页面横向布局总结的更多相关文章
- win8效果的横向布局
有一个月没写过博客了,自己的博客也没有看过,前段时间一直在忙着写代码,公司有一个制漆的产品,与传统纵向布局不一样,要求页面横向布局,类似win8的那种布局效果,最开始,我也没有什么头绪,然后硬着头皮做 ...
- Html.java 存储页面信息类
Html.java 存储页面信息类 package com.iteye.injavawetrust.miner; /** * 存储页面信息类 * @author InJavaWeTrust * */ ...
- 超详细的php用户注册页面填写信息完整实例(附源码)
这篇文章主要介绍了一个超详细的php用户注册页面填写信息完整实例,内容包括邮箱自动匹配.密码强度验证以及防止表单重复等,小编特别喜欢这篇文章,推荐给大家. 注册页面是大多数网站必备的页面,所以很有必要 ...
- H5 页面 rem 布局适配方法
rem 布局适配方案 主要方法为: 按照设计稿与设备宽度的比例,动态计算并设置 html 根标签的 font-size 大小: css 中,设计稿元素的宽.高.相对位置等取值,按照同等比例换算为 re ...
- 谈谈iOS开发如何写个人中心这类页面--静态tableView页面的编写
本文来自 网易云社区 . 一.本文讲的是什么问题? 在开发 iOS 应用时,基本都会遇到个人中心.设置.详情信息等页面,这里截取了某应用的详情编辑页面和个人中心页面,如下: 我们以页面结构的角度考虑这 ...
- Bootstrap~页面的布局
回到目录 Bootstrap作为支持响应式布局的一个前端插件,确实发挥着重要的作用,无论你是在手机,平板还是PC上浏览网页,都能达到不错的效果,这一切一切,都是bootstrap带给我们的! 今天主要 ...
- HTML 页面源代码布局介绍
http://www.cnblogs.com/polk6/archive/2013/05/10/3071451.html 此介绍以google首页源代码截图为例: 从上到下依次介绍: 1.<!D ...
- cl查看类的内存布局
查看单个类的内存布局 Microsoft Visual Studio编译器cl的编译选项可以查看源文件中某个C++类的内存布局,对于想了解某个对象的内存布局的人来说十分直观和方便. • 命令格式 ...
- [CPP] 类的内存布局
本文可以解决下面 3 个问题: 以不同方式继承之后,类的成员变量是如何分布的? 虚函数表及虚函数表指针,在可执行文件中的位置? 单一继承.多继承.虚拟继承之后,类的虚函数表的内容是如何变化的? 在这里 ...
随机推荐
- 手机站使图片高度统一jq代码
<script> function showImg(){ $(".honor_i_c img").each(function(index, element) { var ...
- oracle学习笔记(二)
1. Oracle字符串操作 1.1. 字符串类型 1.1.1. CHAR和VARCHAR2类型 CHAR和VARCHAR2类型都是用来表示字符串数据类型,用来在表中存放字符串信息, 比如姓名.职业. ...
- Koa2 的安装运行记录(二)
参考 :koa2-boilerplate https://github.com/superalsrk/koa2-boilerplate Ajax Login and Ajax Logout in ...
- 在linux下使用curl访问 多参数url GET参数问题
一.在Crontab中使用PHP执行脚本 就像在Crontab中调用普通的shell脚本一样(具体Crontab用法),使用PHP程序来调用PHP脚本.每一小时执行myscript.php如下: # ...
- 终于遇到app不兼容,你遇到了么?
题记: 如果支付宝和QQ不兼容,要二选一,你会怎么选择? 首先了解一下背景: 笔者最近发现,微众银行的app升级到1.7.4, 而患有轻度强迫症的人是迫不及待的点了升级. 第一次,居然安装包安装不成功 ...
- Xml序列化去掉命名空间,去掉申明
#region 序列化 /// <summary> /// 序列化 /// </summary> /// <par ...
- Eclipse下载与安装
有很多小伙伴不知道eclipse在哪里下载以及怎么安装的,那我来给大家做个演示吧. 学习java比较常用的软件就是eclipse,而eclipse安装后并不能马上使用,还需要安装jdk并搭建环境.下面 ...
- JavaScript常用字符串操作方法总结
1.判断是否为字符串:typeof() var str = 'abcd'; typeof(str); //string 2.获取字符串的长度:length var str = '123456789 ...
- js获取网页中宽高度集合
document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.docume ...
- hadoop2.6.4 搭建单机模式
注(要先安装jdk,最好jdk版本>=1.7) 安装jdk http://www.cnblogs.com/zhangXingSheng/p/6228432.html 给普通用户添加su ...