首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

移动对齐 + 图片宽度自适应

自适应四宫格 有这样一张设计稿,左右两边白色间距为4px,中间间距为10px,每一行的两张图是等宽的(即平分去掉间距后的宽度) 有一种方法是和设计师商量,把所有的具体尺寸改为百分比尺寸。。...这个布局不太好写的主要原因是,在宽度上,百分比(50%)与实际尺寸(4px 10px)混杂,所以做到宽度自适应的话会有困难。...下面是正经的一种写法: 图片单元float,宽度设置为50%,奇数单元设置margin-right为10px, 偶数单元设置margin-right为-10px。...父元素设置左padding为4px,右padding为14px,父元素的padding值正好是所有间距的总和,所以它实际宽度的50%是正好符合需求的图片单元宽度。...偶数单元的负margin(-10px)和父元素右padding(14px)会中和成4px的右边距(实际上是因为元素负margin会使其右边的元素向左移动并被其覆盖) 运营的同学在实际操作中,做的图可能不会很标准

1.5K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    关于移动百分比宽度的几种实现

    本文作者:IMWeb 结一 原文出处:IMWeb社区 未经同意,禁止转载 由于移动的设备宽度各不相同,而且因为竖屏宽度都比较小,所以一般都采用满屏的方式布局,而不像PC的使用固定宽度居中的技术布局...full-list .item:nth-child(2n){ background: #ccc; } .full-list .item:hover{ background: #f00; } demo效果见: 移动百分比宽度的几种实现...从这新单位的出现,也知道为了移动的百分比我们的W3C组织也是操碎了心。 为了上面所说的四等分,那每个的宽度应该为25vw,而我们ul的list--xxx就是list--vw。...原理就是js获取视窗宽度,然后设置html的font-size为视窗宽度的十分之一即百分之十,而rem单位表示相对于根元素html的大小,所以1rem即表示视窗宽度的十分之一。...js设置html的font-size document.addEventListener("DOMContentLoaded", function(event) { document.documentElement.style.fontSize

    87410

    关于移动百分比宽度的几种实现

    由于移动的设备宽度各不相同,而且因为竖屏宽度都比较小,所以一般都采用满屏的方式布局,而不像PC的使用固定宽度居中的技术布局。...full-list .item:nth-child(2n){ background: #ccc; } .full-list .item:hover{ background: #f00; } demo效果见: 移动百分比宽度的几种实现...从这新单位的出现,也知道为了移动的百分比我们的W3C组织也是操碎了心。 为了上面所说的四等分,那每个的宽度应该为25vw,而我们ul的list--xxx就是list--vw。...原理就是js获取视窗宽度,然后设置html的font-size为视窗宽度的十分之一即百分之十,而rem单位表示相对于根元素html的大小,所以1rem即表示视窗宽度的十分之一。...js设置html的font-size document.addEventListener("DOMContentLoaded", function(event) { document.documentElement.style.fontSize

    93190

    纯CSS实现移动常见布局——高度和宽度挂钩的秘密

    纯CSS实现移动常见布局——高度和宽度挂钩的秘密 不踩坑不回头.之前我在一个项目中大量使用css3的calc计算属性.写代码的时候真心不要太爽啊…但是在项目上线之后,才让我崩溃了,原因很简单,在低于安卓...需要的效果,如下图: 需求分析 看图,其实很简单.如果宽度是固定的,那么这个布局就不要太简单了. 问题是,设备的宽度是不固定的哦,那么问题就是,在不知道具体宽度的时候,如何来设定它对应的高度呢?...也就是说,如何在CSS中,找到一个高度和宽度挂钩的属性.只要存在这个参数,那么,问题就能解决. 那么有没有这个参数呢?...在我们遇到一些问题的时候,尤其是布局这种问题,我们要考虑的是,能不能用CSS解决,而不时一位的去考虑JS.毕竟,JS是用来交互的,而CSS是用来布局的.

    1.3K10

    移动网页布局】流式布局案例 ① ( 视口标签设置 | CSS 样式文件设置 | 布局宽度设置 | 设置最大宽度 | 设置最小宽度 )

    一、视口标签设置 参考 【移动网页布局】移动网页布局基础概念 ③ ( meta 视口标签简介 | 利用 meta 视口标签 设置 网页宽度 / 是否允许用户缩放 / 初始缩放比例 / 最小缩放比例...、CSS 样式文件设置 ---- 在 index.html 同级目录中 , 创建 css 文件夹 , 在其中存放如下两个 css 样式文件 : normalize.css 初始化样式文件 : 参考 【移动网页布局...】移动网页布局基础概念 ⑨ ( webkit 内核 | 移动网页 CSS 初始化 - normalize.css ) 博客下载 normalize.css 文件 ; index.css 要实现的样式文件...在移动网页布局中 , 网页布局宽度 = 移动设备宽度 , 因此在进行布局时 , 可以为网页布局的主体 标签设置 100% 宽度 ; 2、设置布局最大宽度 将 京东 手机页面 , 拉倒最大便不再放大..., 如下图所示 , 这是因为该页面设置了最大像素 ; 一般移动页面最大像素设置为 980 像素 ; 3、设置布局最小宽度 将京东的 手机 页面宽度压缩到最小 , 如下状态时 , 就不能再进行压缩了

    2.4K10

    JS获取浏览器窗口大小 获取屏幕,浏览器,网页高度宽度

    scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 scrollWidth:获取对象的滚动宽度...Window对象的innerWidth属性包含当前窗口的内部宽度。Window对象的innerHeight属性包含当前窗口的内部高度。 Document对象的body属性对应HTML文档的标签。...document.body.clientHeight表示HTML文档所在窗口的当前高度。document.body. clientWidth表示HTML文档所在窗口的当前宽度。 实现代码 浏览器窗口 的 实际高度: 浏览器窗口 的 实际宽度:...(2)在随后的JavaScript代码中,首先定义了两个变量winWidth和winHeight,用于保存窗口的高度值和宽度值。

    8.1K30

    【如果你要学JS XIV】—— 移动常用事件-移动touch触摸事件

    导绪移动浏览器兼容性较好,不需要考虑JS的兼容性问题,可以放心的使用原生JS书写效果,但是移动也有自己独特的地方。如触屏事件touch (也称触摸事件) , Android和IOS都有。...这类事件用于描述一个或多个触点,使开发者可以检测触点的移动,触点的加和减少,等等 touchstart、touchmove、 touchend 三个事件都会各自有事件对象。...touchstart,touchmove,touchend 可以实现拖动元素2.但是拖动元素需要当前手指的坐标值我们可以使用targetTouches[0] 里面的pageX和pageY3.拖动的原理:手指移动计算出手指移动的距离...,然后用盒子原来的位置+手指移动的距离4.手指移动的距离 = 手指滑动中的位置 - 手指刚开始触摸的位置<!...= e.targetTouches[0].pageY - startY; // 移动盒子,盒子原来的位置+手指移动的距离 this.style.left =

    54400

    Vue.js开发移动经验总结

    作者:阡ゼ陌 移动适配 相对于PC端来说,移动设备分辨率百花齐放,千奇百怪,对于每一个开发者来说,移动适配是我们进行移动开发第一个需要面对的问题。...layoutviewport布局宽度,就是网页的宽度 visualviewport可是宽度,就是浏览器窗口宽度,这个值决定了我们手机一屏能看到的内容;visualviewport和layoutviewport...idealviewport为浏览器定义的可完美适配移动的viewport,固定不变,可以认为是设备视口宽度device-width。...UI出图的时候一般是有一个固定的宽度的,而我们实际的移动设备的宽度却都不太一样,但是如果页面元素的缩放比例和页面宽度的缩放比例一致,在不同尺寸的设备下我们网页的效果也将会是一致的。...键盘弹出与使用transform属性的情况在移动是很常见的,所以需要谨慎使用position:fixed。 推荐使用flex flex,即弹性布局,移动兼容性较好,能够满足大部分布局需求。

    4.3K10

    JS案例 - 基于vue的移动长按手势

    别急~ 长按功能原理分析一波: 所谓的长按其实就是手指按下去,不移动,超过一定时间才把手指拿开的一个过程(我说的好有道理哈哈哈。然后听到一片同一个声音:废话!!)。...监听手指按下去后是否有移动,就该touches上场了,监听他的clientX,clientY只要没变就是没移动。 并且在这个过程中,还会不时地有地方的英雄冒出来干扰我们补兵。...那就是一个手机自带的效果了:   长按时,在移动触摸文字,(至少ios里)会出现选择文字等干扰我们的真正功能,用了preventDefault()这个属性后就没有了。...所以每次获取数组里边的第一个对象对应的clientX和clientY,就是实时的移动点的位置 //找这个点的作用,就是为了监听用户,是否按住还移动了。...// 那么移动的话,先要清除事先埋伏的定时器timer1.要不然,虽然不是长按事件但是倒计时还在进行中。

    9.1K30
    领券