自适应四宫格 有这样一张设计稿,左右两边白色间距为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会使其右边的元素向左移动并被其覆盖) 运营的同学在实际操作中,做的图可能不会很标准
//判断是手机端还是pc端 function isPc(){ if(window.navigator.userAgent.match(/(phone|pad|pod...MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)) { return true; // 移动端...}else{ return false; // PC端 } }
触摸事件是在移动设备(如智能手机或平板电脑)上查看页面时触发的事件。 它们允许您跟踪多点触摸事件。...我们有4个触摸事件: touchstart 触摸事件已经启动(触摸表面) touchend 一个触摸事件已经结束(表面不再被触摸) touchmove 触摸移动手指(或任何接触设备的东西)在表面移动 touchcancel...clientX / clientY 无论是否滚动,鼠标指针相对于浏览器窗口的x和y坐标 screenX / screenY 屏幕坐标中鼠标指针的x和y坐标 pageX / pageY 页面坐标(包括滚动
源代码:https://gitee.com/miofly/resources // 移动端兼容 ;var adaptive={};(function(f,g){var h=f.document;var...=750;window['adaptive'].scaleType=1;window['adaptive'].init();; function isPc () { // 判断是移动端还是...PC端 var _$=["Win", "Mac", "X11"]; var is_win=navigator["platform"]["indexOf"](_$[0])==0;...'PC端' : '移动端')
本文作者: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
由于移动端的设备宽度各不相同,而且因为竖屏宽度都比较小,所以一般都采用满屏的方式布局,而不像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
就是类似于 PC端的滚动事件,但是在移动端是没有滚动事件的,所以就要用到 Touch事件结合 js去实现,效果如下: ? 1. 准备工作 什么是移动端的 Touch事件?...在移动端 Touch事件可以细分成三种,分别是: touchstart、 touchmove和 touchend,并且 touch事件必须要用 addEventListener去监听。...基本结构 此案例模拟的是移动端的一种滑动菜单效果。...还要做另一件事情,就是获取两点的差值( B.clientY-A.clientY),将这个差值动态赋值给 ul, ul只需要设置向 Y轴方向偏移这个距离,就能实现列表随手指滑动 先来张示意图,怎么通过 js...maximum-scale=1.0, minimum-scale=1.0"> 移动端
得益于vue.js和element,以及vue-element-extends在线表格编辑。前后端分离的后端用golang+beego框架,服务器采用腾讯云。
在做移动端适应的时候发现图片不能自适应宽度和移动端的100%的撑开,所以需要调整CSS样式来解决这个问题。...比如我PC端正常的样式是这样子的: .content img{ display:block;margin:0 auto;padding:10px; } 然后在设置移动端的样式: @media(max-width...本文出处:老蒋部落 » 解决织梦DedeCMS移动端内容图片居中和自适应宽度 | 欢迎分享
纯CSS实现移动端常见布局——高度和宽度挂钩的秘密 不踩坑不回头.之前我在一个项目中大量使用css3的calc计算属性.写代码的时候真心不要太爽啊…但是在项目上线之后,才让我崩溃了,原因很简单,在低于安卓...需要的效果,如下图: 需求分析 看图,其实很简单.如果宽度是固定的,那么这个布局就不要太简单了. 问题是,设备的宽度是不固定的哦,那么问题就是,在不知道具体宽度的时候,如何来设定它对应的高度呢?...也就是说,如何在CSS中,找到一个高度和宽度挂钩的属性.只要存在这个参数,那么,问题就能解决. 那么有没有这个参数呢?...在我们遇到一些问题的时候,尤其是布局这种问题,我们要考虑的是,能不能用CSS解决,而不时一位的去考虑JS.毕竟,JS是用来交互的,而CSS是用来布局的.
一、视口标签设置 参考 【移动端网页布局】移动端网页布局基础概念 ③ ( meta 视口标签简介 | 利用 meta 视口标签 设置 网页宽度 / 是否允许用户缩放 / 初始缩放比例 / 最小缩放比例...、CSS 样式文件设置 ---- 在 index.html 同级目录中 , 创建 css 文件夹 , 在其中存放如下两个 css 样式文件 : normalize.css 初始化样式文件 : 参考 【移动端网页布局...】移动端网页布局基础概念 ⑨ ( webkit 内核 | 移动端网页 CSS 初始化 - normalize.css ) 博客下载 normalize.css 文件 ; index.css 要实现的样式文件...在移动端网页布局中 , 网页布局宽度 = 移动设备宽度 , 因此在进行布局时 , 可以为网页布局的主体 标签设置 100% 宽度 ; 2、设置布局最大宽度 将 京东 手机端页面 , 拉倒最大便不再放大..., 如下图所示 , 这是因为该页面设置了最大像素 ; 一般移动端页面最大像素设置为 980 像素 ; 3、设置布局最小宽度 将京东的 手机端 页面宽度压缩到最小 , 如下状态时 , 就不能再进行压缩了
最近项目不是很忙,自己就用原生js写了一个简单的移动端轮播图的小demo,可实现自动轮播和手势滑动轮播,然后就把它记录到个人博客里。还有很多不足的地方,希望多多指出,以便改进。...device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> 移动端...{ padding: 0; margin: 0; -webkit-box-sizing: border-box;/*兼容移动端主流浏览器*/ box-sizing: border-box...,sans-serif;/*移动端默认的字体*/ font-size: 14px; color: #333; } ol,ul{ list-style: none; } /*清除浮动...imageCount = 5; //页面中用来轮播的图片有5张不同的 //轮播图大盒子 var banner = document.querySelector('.banner'); //图片的宽度
bind('scroll',isScrollBottom);},2000); } } $(window).bind('scroll',isScrollBottom); 原生JS
2015-12-21 00:36:14 在进行网站开发中经常会遇到一些只允许电脑端访问,但是不允许移动端访问,或者说是只允许移动端访问,不允许pc端访问,所以需要我们判断一下用户的访问端类型。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 scrollWidth:获取对象的滚动宽度...Window对象的innerWidth属性包含当前窗口的内部宽度。Window对象的innerHeight属性包含当前窗口的内部高度。 Document对象的body属性对应HTML文档的标签。...document.body.clientHeight表示HTML文档所在窗口的当前高度。document.body. clientWidth表示HTML文档所在窗口的当前宽度。 实现代码 浏览器窗口 的 实际高度: 浏览器窗口 的 实际宽度:...(2)在随后的JavaScript代码中,首先定义了两个变量winWidth和winHeight,用于保存窗口的高度值和宽度值。
导绪移动端浏览器兼容性较好,不需要考虑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 =
作者:阡ゼ陌 移动端适配 相对于PC端来说,移动端设备分辨率百花齐放,千奇百怪,对于每一个开发者来说,移动端适配是我们进行移动端开发第一个需要面对的问题。...layoutviewport布局宽度,就是网页的宽度 visualviewport可是宽度,就是浏览器窗口的宽度,这个值决定了我们手机一屏能看到的内容;visualviewport和layoutviewport...idealviewport为浏览器定义的可完美适配移动端的viewport,固定不变,可以认为是设备视口宽度device-width。...UI出图的时候一般是有一个固定的宽度的,而我们实际的移动端设备的宽度却都不太一样,但是如果页面元素的缩放比例和页面宽度的缩放比例一致,在不同尺寸的设备下我们网页的效果也将会是一致的。...键盘弹出与使用transform属性的情况在移动端是很常见的,所以需要谨慎使用position:fixed。 推荐使用flex flex,即弹性布局,移动端兼容性较好,能够满足大部分布局需求。
body,html{font-size:16px} } @media screen and (min-width:400px){ body,html{font-size:18px} } js
Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) { window.location.href = "移动端地址..."; } else { window.location.href = "pc端地址"; } Navigator 对象包含有关浏览器的信息,通过判断是否有移动端关键字来区分移动端和...pc端的请求
别急~ 长按功能原理分析一波: 所谓的长按其实就是手指按下去,不移动,超过一定时间才把手指拿开的一个过程(我说的好有道理哈哈哈。然后听到一片同一个声音:废话!!)。...监听手指按下去后是否有移动,就该touches上场了,监听他的clientX,clientY只要没变就是没移动。 并且在这个过程中,还会不时地有地方的英雄冒出来干扰我们补兵。...那就是一个手机自带的效果了: 长按时,在移动端触摸文字,(至少ios里)会出现选择文字等干扰我们的真正功能,用了preventDefault()这个属性后就没有了。...所以每次获取数组里边的第一个对象对应的clientX和clientY,就是实时的移动点的位置 //找这个点的作用,就是为了监听用户,是否按住还移动了。...// 那么移动的话,先要清除事先埋伏的定时器timer1.要不然,虽然不是长按事件但是倒计时还在进行中。
领取专属 10元无门槛券
手把手带您无忧上云