接触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填写信息类页面横向布局总结的更多相关文章

  1. win8效果的横向布局

    有一个月没写过博客了,自己的博客也没有看过,前段时间一直在忙着写代码,公司有一个制漆的产品,与传统纵向布局不一样,要求页面横向布局,类似win8的那种布局效果,最开始,我也没有什么头绪,然后硬着头皮做 ...

  2. Html.java 存储页面信息类

    Html.java 存储页面信息类 package com.iteye.injavawetrust.miner; /** * 存储页面信息类 * @author InJavaWeTrust * */ ...

  3. 超详细的php用户注册页面填写信息完整实例(附源码)

    这篇文章主要介绍了一个超详细的php用户注册页面填写信息完整实例,内容包括邮箱自动匹配.密码强度验证以及防止表单重复等,小编特别喜欢这篇文章,推荐给大家. 注册页面是大多数网站必备的页面,所以很有必要 ...

  4. H5 页面 rem 布局适配方法

    rem 布局适配方案 主要方法为: 按照设计稿与设备宽度的比例,动态计算并设置 html 根标签的 font-size 大小: css 中,设计稿元素的宽.高.相对位置等取值,按照同等比例换算为 re ...

  5. 谈谈iOS开发如何写个人中心这类页面--静态tableView页面的编写

    本文来自 网易云社区 . 一.本文讲的是什么问题? 在开发 iOS 应用时,基本都会遇到个人中心.设置.详情信息等页面,这里截取了某应用的详情编辑页面和个人中心页面,如下: 我们以页面结构的角度考虑这 ...

  6. Bootstrap~页面的布局

    回到目录 Bootstrap作为支持响应式布局的一个前端插件,确实发挥着重要的作用,无论你是在手机,平板还是PC上浏览网页,都能达到不错的效果,这一切一切,都是bootstrap带给我们的! 今天主要 ...

  7. HTML 页面源代码布局介绍

    http://www.cnblogs.com/polk6/archive/2013/05/10/3071451.html 此介绍以google首页源代码截图为例: 从上到下依次介绍: 1.<!D ...

  8. cl查看类的内存布局

    查看单个类的内存布局 Microsoft Visual Studio编译器cl的编译选项可以查看源文件中某个C++类的内存布局,对于想了解某个对象的内存布局的人来说十分直观和方便. • 命令格式    ...

  9. [CPP] 类的内存布局

    本文可以解决下面 3 个问题: 以不同方式继承之后,类的成员变量是如何分布的? 虚函数表及虚函数表指针,在可执行文件中的位置? 单一继承.多继承.虚拟继承之后,类的虚函数表的内容是如何变化的? 在这里 ...

随机推荐

  1. Linux SVN 命令详解

    1.将文件checkout到本地目录 svn checkout path(path是服务器上的目录)   例如:svn checkout svn://192.168.1.1/pro/domain    ...

  2. OpenCV笔记大集锦(转载)

    整理了我所了解的有关OpenCV的学习笔记.原理分析.使用例程等相关的博文.排序不分先后,随机整理的.如果有好的资源,也欢迎介绍和分享. 1:OpenCV学习笔记 作者:CSDN数量:55篇博文网址: ...

  3. Ubuntu14.04源

    Ubuntu14.04源:   来源: http://wiki.ubuntu.org.cn/Qref/Source (包含15.04.14.10.14.04.12.04.10.04的源)     Ub ...

  4. Hadoop学习记录

    http://blog.csdn.net/m_star_jy_sy/article/details/26476907配置windows里eclipse连接hadoop集群 hadoop常见命令 启动H ...

  5. JDBC的批处理操作三种方式 pstmt.addBatch()

    package lavasoft.jdbctest; import lavasoft.common.DBToolkit; import java.sql.Connection; import java ...

  6. AtomicBoolean介绍与使用

       java.util.concurrent.atomic.AtomicBoolean 继承自Object. 介绍: 在这个Boolean值的变化的时候不允许在之间插入,保持操作的原子性 方法和举例 ...

  7. strsep和strtok_r替代strtok

    char *strtok(char *str, const char *delim) 会修改数据源.外部加锁才线程安全(strtok执行结束再解锁执行另一个strtok循环知道工作完成) 主要是以互斥 ...

  8. MyBatis Like查询处理%_符号

    如果我们数据库中存的字段包含有"%_"这两个like查询的通配符,那么在查询的时候把"%_"当作关键字是查询不出来的,因为mybatis会把这两个字符当作通配符 ...

  9. EF操作多数据库

    1.Account3_Register_DB_Model作为(空)模板库,根据此模板生成的其他数据除了数据库名称不一样,其他表,视图,字段等等都一致 2.Account3_Platform_Maste ...

  10. Linux C编程学习6---字符串处理、数据转换

    1.字符串 应用程序按其功能可分为数值计算.非数值计算以及输入输出操作等.非数值计算程序占相当大的比例,其核心就是字符串处理1.1.字符测试 1.1.1.测试字符是否为英文字母 int isalpha ...