• Stars
    star
    147
  • Rank 251,347 (Top 5 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 9 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

让你的页面轻松适配各种移动设备和PC端浏览器

icon responsive-page

v1.0.0 2015-7-16 by Sun

让你的页面轻松适配各种移动设备和桌面端(PC)浏览器, 1.46 KB only! 无任何其他依赖.

  • 非常适合专题着陆页(landing page)
  • 页面内容一般为几张图片拼接而成
  • 需同时适配移动端和桌面端
  • 需自适应宽度
  • (绝对)定位元素仅需使用 px 单位即可适配
  • 仅需按照 640px(可配置) 宽的设计稿来切图
  • 即使内容很长, 换行也需要正确

演示 responsive-page 适配功能

基础原理

计算出页面内容与页面宽度的比率, 通过 transform: scale 缩放页面内容来达到适配任何屏幕(占满屏幕宽度)的目的.

兼容性

特性: querySelectorAll, CSS3 transform, matchMedia

  • PC端: IE9+, 其他现代浏览器(chrome, firefox等等)
  • 移动端: iOS4+, Android 2.3+

示例

  • jd.html 页面中包含多个需要适配的模块
  • 70c.html 页面仅包含一个需要适配的模块和绝对定位的可点击区域, 并开启 center 模式来适配PC端

页面宽度超过切图宽度后, 不再适配页面宽度, 而是居中显示在页面中

演示 responsive-page center 模式

使用手册

最好的使用手册就是示例, 下载/引入JS, 执行JS, 坐等适配结果

API文档

responsivePage({
    selector: '.mod-responsive', // string 内容区域的父级元素, 接受任何合法的CSS选择器
    sliceWidth: 640,             // number 切图宽度(单位是px), 即设计稿宽度
    center: true                 // boolean 页面宽度超过切图宽度后, 是否不再适配宽度居中显示在页面中
});

感谢他们给我的灵感

如果有任何bug或者问题, 请发个 issue 给项目, 非常感谢.

其他适配方案

  • 百分比

    只用CSS就能够适配屏幕, 比较适合多图片拼接的页面. 由于需要适配屏幕, 因此绝对定位元素的位置, 宽, 高都需要使用百分比来设置, 在布局时我们需要手工将原来的 px 值计算成百分比(特别是 top 难以计算), 让人心好累.

    对于混合大段文字内容时就会出现适配不了的问题, 可能就需要你通过JS来动态设置文字的大小和行高了.

  • initial-scale

    用非常简单的JS就能够实现和 responsive-page 一样的适配效果, 但对于混合大段文字内容时就会出现适配不了的问题(这个很可能是移动端浏览器的BUG造成的, 通过chrome模拟时没有这个问题)

  • rem | flexible

    与"百分比"的解决方案类似, 只不过这里使用的是 rem 单位, 使用此方案时所有元素的尺寸单位和位置单位都需要使用 rem, 才能确保适配屏幕时元素的尺寸能够自由适配, 相对于百分比值的计算, 计算出元素的 rem 值要方便多了.

    此方案也需要借助 JS 来实现适配的逻辑, 主要是根据屏幕宽度比来修改 root(html) font-size, 以达到适配任何屏幕的目的. 可以参考web app变革之rem阿里无线前端可伸缩布局方案来详细了解下关于 rem 和适配.

    对于混合大段文字内容时也出现了一点点不适配的问题, 文字相对于原始布局出现了一些偏移, 其他方面都很好, 算是非常完满的适配方案了.

版本更新历史

CHANGLOG

Licence

MIT

More Repositories

1

onekey-decompile-apk

一步到位反编译apk工具(onekey decompile apk)
Batchfile
794
star
2

puer-mock

Puer + Mock.js = A configurable mock server with configurable mock(random) data.
HTML
497
star
3

wechat-mp-article

高颜值的微信公众号图文消息排版
HTML
297
star
4

page-schema-player

配页坊: 简称配方 - 为配置页面而生, 专注于配置后台页面
JavaScript
62
star
5

mobile-fixed-columns-table

在移动平台上(Android/iOS...)可用的固定列/表头的表格组件
JavaScript
36
star
6

model-adapter

模型适配器
JavaScript
22
star
7

between-points

通过点击Highcharts X-Y轴系列图形(如line, area, column, bar)上的点来获取差值, 以连接线的形式来展现他们的关系.
JavaScript
17
star
8

hbase-sql

通过sql来查询hbase上的数据
Java
16
star
9

blur-admin-clean

BlurAdmin 干净整洁版
CSS
15
star
10

weapp-backend-api

统一封装微信小程序平台后端接口的调用
JavaScript
10
star
11

bootup-sandbox

在当前页面中启动一个沙箱环境, 让所有代码跑在沙箱中
JavaScript
7
star
12

page-schema

基于 AMis 配置化的页面
JavaScript
6
star
13

weapp-component-debugger

"小老弟"微信小程序调试助手(自定义组件)
6
star
14

requirejs-component

基于 RequireJS 的共用组件项目示例
JavaScript
6
star
15

HttpToolbox

HTTP 工具箱
Java
5
star
16

crawler-toolbox

爬虫工具箱
JavaScript
5
star
17

weapp-simple-storage

微信小程序的简单存储, 支持 TTL(time-to-live) 缓存自动过期
JavaScript
5
star
18

source-map-file-export

读取 Source Map 文件, 导出其中的源码文件
JavaScript
5
star
19

weapp-commons-util

微信小程序通用工具库
JavaScript
5
star
20

f2e-ps-toolbox

前端 PS 切图常用工具箱
4
star
21

weappdevtools-cli

微信小程序开发者工具命令行小秘书
JavaScript
4
star
22

copy-push

copy & push 一步完成文件的复制和提交(git)
JavaScript
4
star
23

gulp-oss-upload

A gulp plugin for uploading static file to aliyun oss(by official ali-oss sdk).
JavaScript
4
star
24

bootstrap-cheat-sheet

Easier & faster way to use bootstrap everyday
4
star
25

standard-http-client

符合接口规范的 HTTP 客户端
TypeScript
3
star
26

backend-tpl-server

后端模版页面服务器
JavaScript
3
star
27

qsman

解析和维护(增删改查) URL 上的参数
JavaScript
3
star
28

danmaku-player

弹幕播放器
JavaScript
3
star
29

auto-track-event

给页面元素自动添加事件跟踪功能
JavaScript
3
star
30

hairline

极细的线 - 用极简的方式实现
HTML
2
star
31

wieldy-webpack

易于使用的 webpack
JavaScript
2
star
32

sync-software

我的常用软件配置 - 我的(软件)工作环境
Lua
2
star
33

css-vertical-centering

CSS实现任意的单行(多行)垂直居中
2
star
34

zoom

等比例缩放适配
HTML
2
star
35

fe-common-build

前端工程化之通用构建方案
JavaScript
2
star
36

javascript-utility-library-collection

collect popular (independent) utility javascript (micro) library
2
star
37

cst

逛长沙通 - 长沙通手机App(非官方版)
JavaScript
1
star
38

in-which-browser

Detect browser user agent
JavaScript
1
star
39

iswitch

iOS 7 style checkbox
CSS
1
star
40

dev-serv

开发时使用的专属服务器
JavaScript
1
star
41

backend-api

一个用于与后端交互的数据层, 即统一地调用后端接口.
JavaScript
1
star
42

weapp-component-rich-view

weapp-component-rich-view
1
star
43

vue-cli-plugin-wieldy-webpack

将 wieldy-webpack 迁移到 vue-cli 3.0 插件体系
JavaScript
1
star
44

s60-mymoney-2-feidee-money

将我的财务中导出的数据迁移到随手记
Java
1
star
45

qx

纷享销客 企信(PC)独立版
HTML
1
star
46

requirejs-example

基于 RequireJS 的使用共用组件的项目示例
JavaScript
1
star
47

purecss-cheat-sheet

Pure.css Cheat Sheet
1
star