http://www.jiangweishan.com/article/lowIeResposive.html 响应式布局,oh my god!!有点醉了,感觉是老生常谈的话题了.虽然已经谈过很多了,但这次也很有必要拿出来探讨下.为什么呢?往下看呗... 最 近在折腾公司首页的改版,设计师设计了三个版本,宽度分别为1600px,1200px,960px.看到这三个尺寸的设计,很明显需要做PC端的响应 式,我们都知道针对IE9+和其他高富帅浏览器的响应式,使用Media Query轻松搞定.至于I…
前言:PC端 电脑显示器的尺寸种类还是很多的,台式电脑和笔记本电脑尺寸相差就更明显,所以响应式布局还是很重要的,甚至是必须要考虑的. 响应式的页面好不好,在后管平台上很明显.因为后管平台,一般是全屏显示.不像官网那样两边有一个安全尺寸.    PC端的宽度相差太大,一般是常用响应式的布局(布局改变了,不仅仅尺寸变化):而不是像移动端那样,通过rem单位,只是改变了元素的尺寸. 一.栅格系统:(栅格系统是比较好的一种响应式布局,框架已经帮我们处理好了,只要配置下就可以自动实现响应式的布局) 1.栅…
媒体查询作为响应式布局的方法之一,实际项目中用途也很广.但是你真的知道怎么用吗? 例如,下面匹配 iphone6/7/8 屏幕 @media screen and (max-width: 375px){ /* CSS 代码 */ } 一般这么写,指的是webview的宽度,同样的,根据clientWidth 设置根节点是fontsize 也是参考的webview的宽度. 如果放在pc上或者是手机默认全屏H5里面,这么写是没有问题的. 但是混合开发,将H5页面嵌套在app的webview里面,这么…
背景 移动端响应式布局开发主要方案有: 基于rem开发 基于媒体查询 基于弹性盒 基础概念 在讨论响应式布局知识前,先了解下移动端常用基础概念. 逻辑像素(CSS pixels) 浏览器使用的抽象单位,主要用来在网页上绘制内容:通常在我们实际开发中涉及到的CSS单位px都是指逻辑像素. 设备像素或物理像素(Device Pixels) 显示屏幕的最小物理单位,每个DP包含自己的颜色.亮度.等值的 CSS pixels在手机屏幕上占多大的位置,这不是固定的,这取决于很多属性:经过分析和总结,我们可…
相信大家在做移动端的时候都会做各个手机的适配这种适配就是响应式布局在之前做网站的响应式从pc到手机用的是媒体查询 @media screen and (max-width: 300px){} 最大宽度300像素需要的样式 后面移动端业务兴起后做的响应式布局是基于手机各个型号以及各种分辨率的响应式这个时候用的就是rem布局,也是最简单的布局直接用rem写是不行的,这个时候就需要借助js function fontRem() { var bodyWidth = document.getElement…
媒体查询(@media):能在不同的条件下使用不同的样式,使页面在不同在终端设备下达到不同的渲染效果 列举常用的pc屏幕宽度: 1024  1280  1366  1440  1680  1920  我们可在css样式中来写,也在不同屏幕下引入相应的样式. 1.css样式 假设我们在不同屏幕下要写基础字体的变化: @media screen and(min-width: 1024px){ body{font-size: 12px} } /*>=1024的设备屏幕*/ @media screen…
1.媒体查询:@media only screen and (max-width: ) {},在最初做pc端时,使用各种媒体查询,因为pc的屏幕分辨率总共就几种,不嫌麻烦的重复使用类名.有很大的缺陷就是UI给的设计稿宽度是一定的,在做响应式式凭借自己的感觉是一种超级不爽的美感纠结症. 2.百分比:百分比也是相当的麻烦,还要去各种计算,不是程序员该做的笨重事. 3.em:缺陷是父盒子的百分比. 自己探索了一条自己选择走的捷径,不用在担心宽度和高度不等比例适应,也不用担心在各分辨率下的布局会出现问题…
(function(){ var fontSizeMatchDeviceWidth = function(){ var deviceWidth = document.documentElement.clientWidth || window.screen.width || 320, devicePixelRatio = window.devicePixelRatio || 1, fontSize = (Math.ceil(deviceWidth * 16 / 320)), scale = 1 /…
使用目的:为了让移动设计稿在大部分的移动设备上看起来有一致的展示效果,我们使用rem的像素单位. 方法一: 1.在页面引入js,获取屏幕大小,更新rem基准. (function () { var currentWidth = document.documentElement.clientWidth || document.body.clientWidth nFont = currentWidth * 50 / 375; if (nFont > 50) { nFont = 50 } getHtm…
AngularJS本地化,国际化 国际化,简写为i18n,指的是使产品快速适应不同语言和文化. 本地化,简称l10n,是指使产品在特定文化和语言市场中可用. 对开发者来说,国际化一个应用意味着将所有的文字和其他因地区而异的数据从应用中抽离出来. 本地化意味着为这些抽离的数据和文字提供翻译和转变成本地的格式. 目前,AngularJS支持日期,数字和货币的国际化和本地化. 另外,AngularJS还通过ngPluralize指令支持本地多元化. 所有的AngularJS本地化组件都依赖于$loca…
项目中遇到的坑,写篇博客做个笔记纪念下,position: fixed一般来说都兼容各个浏览器,但是要兼容浏览低版本问题,就得用-webkit-transform: translateZ(0);这段代码了.   项目中用到position: fixed;z-index: xxx;的时候,记得加上这个css:-webkit-transform: translateZ(0);    这个兼容position:fixed浏览器低版本    不然会有浏览器滚动出现闪烁bug.当然这里透明度opacity…
使用socket.io client 开发时兼容IE低版本的办法 socket.io提供了针对各个版本浏览器的‘socket’功能的封转:websocket,长连接,流,flash什么的.给你格式化下代码: if (/Firefox\/\s/.test(navigator.userAgent)){ var socket = io.connect('127.0.0.1:8000',{transports:['xhr-polling']}); } else if (/MSIE (\d+.\d+);/…
就目前而言,WebSocket是最好的Web通信解决方案了.但是IE从10才开始兼容它,对于目前大量IE8存在的市场,原生的WebSocket显然不太实用,我们需要低版本兼容的解决方案.于是我模拟WebSocket在浏览器上的行为,用AS3写了个兼容的版本. 内容有点多,这篇只把演示给搞定,至于AS的源码就丢到下一篇了.下面是效果图: 演示下载地址: WebSocket兼容到低版本浏览器(演示实例) 页面代码比较简单,用法和正常的WebSocket基本一样,只是引用了WebSocket.js这个…
前台: 支持四套模版, 可以在后台切换   系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的html,所以访问速度快,轻便,对服务器负担小 3.网站前端采用主流的响应式布局,同一页面同时支持PC.平板.手机(三合一)浏览器访问 4.springmvc +spring4.3.7+ mybaits3.3  SSM 普通java web(非maven, 赠送pom.xml)  数据库:mysql ------…
1.前言 (1)vw/vh介绍 在使用之前,我们先简单了解一下什么是vw和rem以及它们的作用,vw是css3出现的一个新单位,它是"view width"缩写,定义为把当前屏幕分成一百份,1vw即为屏幕的1%,与之对应的是vh,把高分成一百份,1vh即为屏幕高的1%,一般我们常用的vw单位来完成响应式开发 (2)rem介绍 rem是相对长度单位.相对于根元素(即html元素)font-size计算值的倍数,比如你html设置的字体为20px,那么页面中的1rem就相当于20px,举个…
响应式布局的探讨 响应式布局的两种方式 基于百分比的布局 例:Bootstrap 基于rem的布局 例:淘宝触屏版 这两种布局都需要依赖于CSS3的media query来设置布局断点(或者通过js监听窗口大小来调整) 从而可以根据屏幕大小来调整 百分比布局中盒子的宽度 或 rem布局中HTML的字体大小 知识点: 实现rem布局的方式和效果 实现平均分布对齐的方式(flex与justify) 平均分布对齐的应用 百分比布局 基于百分比的布局这里就演示了,Bootstrap 已经应用很广泛,相信…
rem单位大家可能已经很熟悉,rem是随着html的字体大小来显示代表宽度的方法,我们怎样进行移动端响应式开发呢 浏览器默认的字体大小为16px 及1rem 等于 16px 如果我们想要使1rem等于 12px 只需设置html的字体大小为 12/16 及html的字体大小为font-size:75% html { font-size:75%;    <!--  12/16   -->} 我们再来看一下各个浏览器的屏幕宽度 iphone4  320 iphone5  320 iphone6  …
视口 在前一段时间,我曾经写过一篇关于viewport的文章.最近由于在接触移动端开发,对viewport有了新的理解.于是,打算重新写一篇文章,介绍移动端视口的相关概念. 关于这篇文章说到的所有知识,本质上离不开以下代码 <meta name="viewport" content="width=device-width, initial-scala=1, maximum-scale=1, minimum-scale=1, user-scalable=no"…
一. 在HTML的头部加入meta标签 在HTML的头部,也就是head标签中增加meta标签,告诉浏览器网页宽度等于设备屏幕宽度,且不进行缩放,代码如下: <meta name="viewport" content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0"> 简单分析一下这一行代码的含义:width=device…
在Nop3.4中,他抛弃了原来的xxx.Mobile.cshtml的这种写法,而是采用了响应式布局,并且把规则也给改了,你在后台配置不启用响应式布局,在前台你仍然不能写xxx.Mobile.cshtml这样.查了一天的原因,终于查出来了. 首先请大家了解mvc4的新特征:http://www.cnblogs.com/egger/p/3400076.html 看完这个,估计你也会被误导,认为MVC已经自己支持了.Mobile.cshtml这种写法.觉得他肯定是哪里把那个设置给禁用了,反正我就是顺着…
基于rem的移动端响应式适配方案(详解) : https://www.jb51.net/article/118067.htm 移动端H5页面的设计稿尺寸大小规范 http://www.tuyiyi.com/v/53039.html…
    在前端开发过程中,会用到本地缓存,但是由于浏览器对不同规范支持的程度不一样,每次进行使用都要为兼容行花费不少时间.我整理了一个本地存储的组件.     组件特点: 可以配置使用localStorage.sessionStorage.cookie.Object,IE低版本支持userData 统一的使用接口set.get.remove 使用方便,直接引入JS,进行初始化即可     下面是源码: (function() { var ua = navigator.userAgent.toLo…
最近做移动端H5页面用VUX来写UI组件这块.ios测试的时候没啥大问题,不过在4.4版本的华为手机上测试就崩了.接下来详细记述下崩的几个点. 第一:vux自带的提示框,在低版本安卓系统上全不是居中显示,都偏左: 第二:使用Action Sheet来显示性别选择模态弹出框的时候,一开始就显示,即使选择了之后也不消失: 第三:弹出层没有遮罩层: 第四:一些css3样式会设置无效: 解决办法: 只要在package.json中修改一下browserslist(见截图):…
项目源代码下载地址:轮播图 以下为项目实现效果:(由于gif太大,所以只上传一张图片,但效果完全能实现,经测试,在ie各版本浏览器及chrome,firefox等浏览器中均能实现效果,可以实现点击切换图片,无缝滚动和非无缝滚动两种效果) 页面源代码:index.html(以下注释自行切换,为了项目清晰,所以用了四个js文件,分别实现不同的效果) <!DOCTYPE html> <html lang="zh-CN"> <head> <meta c…
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="keywords" content="javascript, 动画, 抛物线" /> <title>抛物线运动</title> <style> body { margin: 0; font-size: 14px; font-…
一.媒体(介)查询 1.1 基本语法 媒体查询由媒体类型和一个或多个检测媒体特性的条件表达式组成.媒体查询中可用于检测的媒体特性有:width.height和color(等).使用媒体查询可以在不改变页面内容的情况下,为特性的一些输出设备定制显示效果. 使用 @media 查询,你可以针对不同的媒体类型(媒体.媒介)定义不同的样式.@media 可以针对不同的屏幕尺寸设置不同的样式,特别是如果你需要设置设计响应式的页面,@media 是非常有用的. 基本语法: @media 约束词  媒体类型…
一.viewport视口 1.1什么是屏幕尺寸.屏幕分辨率.屏幕像素密度? 屏幕尺寸:指屏幕的对角线的长度,单位是英寸,常见的屏幕尺寸有3.5.3.7.4.2.4.7.5.0.5.5.6.0等. 屏幕分辨率:指在横纵向上的像素点数,单位是px,1px=1个像素点.一般以纵向像素*横向像素来表示一个手机的分辨率,如1920*1080.(这里的1像素指的是物理设备的1个像素点) 屏幕像素密度:屏幕上每英寸可以显示的像素点的数量,单位是ppi.屏幕像素密度与屏幕尺寸和屏幕分辨率有关,在单一变化条件下,…
一.移动端默认样式 ·IOS和Android下触摸元素时出现半透明灰色遮罩 a,input,button{ -webkit-tap-highlight-color: transparent; } ·IOS按钮圆角的问题  button,input{ border-radius:; -webkit-appearance: none; } ·上下拉动滚动条时卡顿.慢  body { -webkit-overflow-scrolling: touch; overflow-scrolling: touc…
HTML布局: <div id="one"> <div class="aa"></div> <div class="aa"></div> <div class="aa"></div> <div class="aa"></div> <div class="aa"><…
一.前言 nodeList转数组貌似很少会这样去操作,但我在做图片懒加载时,我获取了所有需要做懒加载的img元素,也就是一个NodeList对象,打个比方: 对这些元素进行src修改后,我想将此项从NodeList中删除掉,毕竟是操作dom的行为,我不想每次加载完成还在反复操作这堆dom节点. //这样加载完成scroll再怎么执行都不会再触发 function replaceUrl() { if(nodeList.len){ nodeList.forEach(function (self, i…