初始化
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
html,
|
||||
body,
|
||||
ul,
|
||||
li,
|
||||
ol,
|
||||
dl,
|
||||
dd,
|
||||
dt,
|
||||
p,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6,
|
||||
form,
|
||||
fieldset,
|
||||
legend,
|
||||
img,input{
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
fieldset,
|
||||
img {
|
||||
border: none;
|
||||
}
|
||||
|
||||
img {
|
||||
display: block;
|
||||
}
|
||||
|
||||
|
||||
|
||||
ul,
|
||||
ol {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
body {
|
||||
color: #333;
|
||||
font: 12px/20px "SimSun", "宋体", "Arial Narrow", HELVETICA;
|
||||
background: #fff;
|
||||
/* overflow-y:scroll;*/
|
||||
/* overflow-x: hidden; */
|
||||
}
|
||||
|
||||
a {
|
||||
color: #666;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: #666;
|
||||
}
|
||||
|
||||
a:hover,
|
||||
a:active,
|
||||
a:focus {
|
||||
color: #ff8400;
|
||||
text-decoration: underline;
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
(function flexible (window, document) {
|
||||
var docEl = document.documentElement
|
||||
var dpr = window.devicePixelRatio || 1
|
||||
|
||||
// adjust body font size
|
||||
function setBodyFontSize () {
|
||||
if (document.body) {
|
||||
document.body.style.fontSize = (12 * dpr) + 'px'
|
||||
}
|
||||
else {
|
||||
document.addEventListener('DOMContentLoaded', setBodyFontSize)
|
||||
}
|
||||
}
|
||||
setBodyFontSize();
|
||||
|
||||
// set 1rem = viewWidth / 10
|
||||
function setRemUnit () {
|
||||
var rem = docEl.clientWidth / 10
|
||||
docEl.style.fontSize = rem + 'px'
|
||||
}
|
||||
|
||||
setRemUnit()
|
||||
|
||||
// reset rem unit on page resize
|
||||
window.addEventListener('resize', setRemUnit)
|
||||
window.addEventListener('pageshow', function (e) {
|
||||
if (e.persisted) {
|
||||
setRemUnit()
|
||||
}
|
||||
})
|
||||
|
||||
// detect 0.5px supports
|
||||
if (dpr >= 2) {
|
||||
var fakeBody = document.createElement('body')
|
||||
var testElement = document.createElement('div')
|
||||
testElement.style.border = '.5px solid transparent'
|
||||
fakeBody.appendChild(testElement)
|
||||
docEl.appendChild(fakeBody)
|
||||
if (testElement.offsetHeight === 1) {
|
||||
docEl.classList.add('hairlines')
|
||||
}
|
||||
docEl.removeChild(fakeBody)
|
||||
}
|
||||
}(window, document))
|
||||
Vendored
+1
@@ -0,0 +1 @@
|
||||
!function(e,t){function n(){t.body?t.body.style.fontSize=12*o+"px":t.addEventListener("DOMContentLoaded",n)}function d(){var e=i.clientWidth/10;i.style.fontSize=e+"px"}var i=t.documentElement,o=e.devicePixelRatio||1;if(n(),d(),e.addEventListener("resize",d),e.addEventListener("pageshow",function(e){e.persisted&&d()}),o>=2){var a=t.createElement("body"),s=t.createElement("div");s.style.border=".5px solid transparent",a.appendChild(s),i.appendChild(a),1===s.offsetHeight&&i.classList.add("hairlines"),i.removeChild(a)}}(window,document);
|
||||
@@ -0,0 +1 @@
|
||||
!function(e){function t(a){if(i[a])return i[a].exports;var n=i[a]={exports:{},id:a,loaded:!1};return e[a].call(n.exports,n,n.exports,t),n.loaded=!0,n.exports}var i={};return t.m=e,t.c=i,t.p="",t(0)}([function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=window;t["default"]=i.flex=function(normal,e,t){var a=e||100,n=t||1,r=i.document,o=navigator.userAgent,d=o.match(/Android[\S\s]+AppleWebkit\/(\d{3})/i),l=o.match(/U3\/((\d+|\.){5,})/i),c=l&&parseInt(l[1].split(".").join(""),10)>=80,p=navigator.appVersion.match(/(iphone|ipad|ipod)/gi),s=i.devicePixelRatio||1;p||d&&d[1]>534||c||(s=1);var u=normal?1:1/s,m=r.querySelector('meta[name="viewport"]');m||(m=r.createElement("meta"),m.setAttribute("name","viewport"),r.head.appendChild(m)),m.setAttribute("content","width=device-width,user-scalable=no,initial-scale="+u+",maximum-scale="+u+",minimum-scale="+u),r.documentElement.style.fontSize=normal?"50px": a/2*s*n+"px"},e.exports=t["default"]}]); flex(false,100, 1);
|
||||
@@ -0,0 +1,61 @@
|
||||
(function(doc, win) {
|
||||
// html元素字体
|
||||
// 这里基础字体设置为10在uc, WX上没效果, 不知道为什么
|
||||
// 设置为10时, dpr=1的手机, 宽度360, 计算出来html的字体大小为5px, 可能是字体太小了
|
||||
// 尽量设置大一些, 这样避免12px字体大小的限制
|
||||
var _rootFontSize = window._rootFontSize || 100;
|
||||
|
||||
// 默认不支持缩放
|
||||
var _remMetaScalable = typeof window._remMetaScalable === 'undefined'
|
||||
? false
|
||||
: !!window._remMetaScalable;
|
||||
|
||||
var docEl = doc.documentElement,
|
||||
isIOS = navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
|
||||
|
||||
// 只针对IOS设备
|
||||
// dpr = isIOS ? Math.min(win.devicePixelRatio, 3) : 1,
|
||||
dpr = 1,
|
||||
// 计算缩放比
|
||||
scale = 1 / dpr,
|
||||
|
||||
// 检测支持的"缩放"事件
|
||||
resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize';
|
||||
docEl.dataset.dpr = dpr;
|
||||
|
||||
// 被iframe引用时,禁止缩放
|
||||
dpr = window.top === window.self ? dpr : 1;
|
||||
|
||||
var metaEl = doc.createElement('meta');
|
||||
metaEl.name = 'viewport';
|
||||
var metaElContent = 'width=device-width, ';
|
||||
|
||||
// 支持缩放
|
||||
if (_remMetaScalable) {
|
||||
metaElContent += 'initial-scale=' + scale;
|
||||
} else {
|
||||
metaElContent += (
|
||||
'initial-scale=' + scale
|
||||
+ ',maximum-scale=' + scale
|
||||
+ ', minimum-scale=' + scale
|
||||
+ ', user-scalable=no');
|
||||
}
|
||||
metaEl.content = metaElContent;
|
||||
docEl.firstElementChild.appendChild(metaEl);
|
||||
|
||||
// 缩放/旋转设备检测函数
|
||||
var recalc = function() {
|
||||
var width = docEl.clientWidth;
|
||||
|
||||
// 750为设计用的宽度, 比如它以iphone6标准(宽750)
|
||||
// 此时, 按照设计稿的尺寸写就可以了
|
||||
// 如: 设计稿为100px, 那么就写4rem(100 / 25), 25是自己设置的
|
||||
// 也可以设置成100, 这样就写100px就写1rem
|
||||
docEl.style.fontSize = _rootFontSize * (width / 375) + 'px';
|
||||
};
|
||||
recalc();
|
||||
|
||||
if (!doc.addEventListener) return;
|
||||
win.addEventListener(resizeEvt, recalc, false);
|
||||
doc.getElementsByTagName('body')[0].style.fontSize = '16px'
|
||||
})(document, window);
|
||||
Reference in New Issue
Block a user