Plane UI,意为纸飞机或平面 UI,即 P(aper) (P)lane UI 的缩写,是一个构建 HTML5 应用的跨终端响应式前端界面框架及解决方案。
简单通用,高效开发;
模块化,低耦合;
移动优先,优雅降级;
美学追求,交互为本;
持续演进,拥抱新技术;
基于 HTML5 + CSS3:移动优先,快速开发跨终端响应式 Web 应用;
交互美学:扁平化风格,借鉴和溶合 Google Material Design 部分设计风格及规范,同时又有自己的风格;
按需定制:样式语义化,使用 SCSS 预处理样式;
基于 jQuery:更高的开发效率,方便使用各种 jQuery 插件;
丰富的组件:自带大量常用的组件,并向 Web Components 演化;
组件模块化:遵循 CommonJS 规范,支持 AMD / CMD 各种模块化加载工具;
命名空间: CSS 前缀式命名空间;
优雅降级:向下“基本”兼容到 IE8 ;
注:IE8 下支持基本的内容和样式渲染和部分交互。
Bower 安装:
bower install planeui
<link rel="stylesheet" type="text/css" href="dist/css/planeui.min.css" /> <script type="text/javascript" src="./js/jquery-2.1.1.min.js"></script> <script type="text/javascript" src="./dist/js/planeui.js"></script>
兼容IE8~9 的用法(基本的内容渲染或不完全的支持,不过还是建议不考虑兼容 IE8):
<link rel="stylesheet" type="text/css" href="./dist/css/planeui.min.css" /> <!--[if (gte IE 9) | !(IE)]> <!--><script type="text/javascript" src="./js/jquery-2.1.1.min.js"></script> <!--<![endif]--> <!--[if lt IE 9]> <script type="text/javascript" src="./js/jquery-1.11.3.min.js"></script> <script type="text/javascript" src="./dist/js/planeui.patch.ie8.min.js"></script> <![endif]--> <!--[if lt IE 10]> <script type="text/javascript" src="./dist/js/planeui.patch.ie9.min.js"></script> <![endif]--> <script type="text/javascript" src="./dist/js/planeui.js"></script>
响应式网格布局:
尺码 | 分辨率 | 描述 |
---|---|---|
xs | * | 所有屏幕(或手机竖屏) |
sm | 640px及以上 | 手机横屏等 |
md | 768px及以上 | 平板电脑(iPad)竖屏等 |
lg | 992px及以上 | 平板电脑(iPad)横屏、PC 机、笔记本等 |
xl | 1200px及以上 | PC 机、笔记本等 |
xxl | 1400px及以上 | PC 机、笔记本等 |
整体布局及限定最大宽度:
<div class="pui-layout pui-layout-fixed"></div>
.pui-layout-fixed即限定最大宽度为960px,其他宽度限定:pui-layout-fixed-980 pui-layout-fixed-1000 pui-layout-fixed-1200 pui-layout-fixed-1360 pui-layout-fixed-1400 pui-layout-fixed-1500 pui-layout-fixed-1600 pui-layout-fixed-1700 pui-layout-fixed-1800,通过媒体查询当前的屏幕宽度响应对应最大宽度。
12 等分网格布局示例:
<div class="pui-grid"> <div class="pui-row"> <div class="pui-grid-xs-3"></div> <div class="pui-grid-xs-3"></div> <div class="pui-grid-xs-3"></div> <div class="pui-grid-xs-3"></div> </div> <div class="pui-row"> <div class="pui-grid-xs-4"></div> <div class="pui-grid-xs-4"></div> <div class="pui-grid-xs-4"></div> </div> <div class="pui-row"> <div class="pui-grid-xs-3"></div> <div class="pui-grid-xs-6"></div> <div class="pui-grid-xs-3"></div> </div> <div class="pui-row"> <div class="pui-grid-xs-5"></div> <div class="pui-grid-xs-7"></div> </div> </div>
Flexbox 弹性布局示例(不支持 IE9 及以下版本):
<div class="pui-flexbox pui-flex-column"> <header>标题栏</header> <div class="pui-flex">内容层</div> <footer>底栏</footer> </div>
更多示例及用法详见:https://pandao.github.io/planeui/
Arrow
Article
App Layout
Animations
Basic
Badge / Label / Tag
Button
Button Sheet
Breadcrumb
Card
Colors (Material Design Colors)
Color Picker (Material Design Color Picker)
Checkbox
Close Button
Comment
Dialog
Date Picker(未实现)
Fonts
Font sizer
File Input
FullPage
Flexbox Layout
Forms
Form Validator
Grid Layout
Gallery (未实现)
Icons (自带 Font Awesome 和 手机淘宝图标库两套图标库)
Image
List
ListView
Loading
Menu
Menubar
Menu Accordion
Mask
Notice
Pagination
Progress
Rating
Radio Button
Ring Progress
Search
Slider(未实现)
Switch Button
ScrollTo (Anchor + Container)
SideNav / Side slide (Off Canvas Plus)
Tab
Texts
Table
Top10
Tooltip
Timeline
Time Picker(未实现)
Uploader(未实现)
Z-Depth (Material Design Z-Depth)
1、依赖项目
jQuery jQuery License
Normalize.css 未知 License
Font Awesome GPL License & CC BY 3.0 License
手机淘宝图标库 未知 License
HTML5 Shiv MIT and GPL2 licenses
Respond MIT License
Selectivizr MIT License
Modernizr MIT License
Flexie MIT License
Prefixes.scss MIT License
2、参考项目
注:以上所有项目排名不分先后。
Plane UI 对浏览器进行了分级支持 (GBS,即 Graded Browser Support,分级浏览器支持),优先支持那些支持 HTML 5、CSS3、ES5 / 6 等新特性的现代浏览器。
A > B > C > D
级别 | 浏览器 | 描述 |
---|---|---|
A 级 | Webkit 系(Chrome 31+、Safari 7+、Opera 29+等) | 完整的渲染和交互支持 |
Android 4.2+ 浏览器(自带、UC、QQ、Chrome等) | ||
iOS Safari 7.1+ | ||
Firefox 31+ | ||
桌面 IE10+、WP 8.1+ IE | ||
B 级 | iOS 6.x 浏览器 | 基本完整的支持,部分支持不完善 |
Android 2.3.x+ 浏览器 | ||
Firefox 旧版本 | ||
Opera 旧版本(非 Chromium) | ||
IE9、WP IE | ||
C 级 | IE8、Android 2.2.x+ 浏览器 | 部分基本支持,基本内容的渲染 |
D 级 | 其他浏览器(IE6~7等) | 部分基本支持或不支持 |
兼容支持测试:
iOS 7+
Android 4.2+
Chrome (latest)
Firefox (latest)
Safari 6+
Opera (latest)
Internet Explorer 9+
IE 9 下因为它本身不支持部分 HTML5 特性(例如动画、Flexbox等)的原因,不太完美的支持。 IE 8 只是提供最基本的兼容支持,有部分不支持、不完善或兼容性差。 IE 7 及以下版本、Window Phone 等平台或浏览器均未测试。
其他环境的兼容测试:
Node-webkit
Phonegap
注:由于条件的限制,Android 和 iOS 的其他版本暂时未测试,欢迎使用者反馈和提交 Bug。
2015年最全的移动WEB前端UI框架分享给大家。 目前,众多互联网公司APP都嵌入了大量的HTML5,移动端的开发越来越重视,HTML5的运用场景也越来越多了。下面在移动WEB开发的过程中,使用合适的移动WEB UI框架可以大大提升我们的开发效率。下面就把2015年最全的移动WEB前端UI框架分享给大家。 Amaze UI Amaze UI是一个轻量级(所有CSS和JS gzip后100kB左右
Unity UI系统 一、UI系统介绍 1. Unity2D 和 UI的区别 Unity2D:主要基于 SpriteRenderer 和 2D物理系统等组成。 UI:由 Canvas 以及 各种 UI 组件组成。 UI 的显示不基于 SpriteRenderer,且UI界面是完全贴合屏幕的,不会随相机的移动而移动。 2. UI系统的组成 Canvas:画布,UI 的根节点,尺寸大小和画面分辨率一致
NX二次开发-UFUN拾取平面对话框UF_UI_specify_plane #include <uf.h> #include <uf_ui.h> UF_initialize(); //拾取平面对话框 double orientation[9] = { 0, 0, 0, 0, 0, 0, 0, 0, 0 }; double origin
Unity 一个好用的UI灰度Shader 引言 在unity日常项目的开发过程中,经常会遇到这种情况,显示按钮不可点击,最简单的方式,直接将Button的Interactable改为false,但是UI表现效果不是很好。我们可以考虑重新制作一个灰度的UI,如果这种需求比较多的情况下,就需要制作很多的图片,这时候可以考虑使用灰度shader来替代,如果追求UI画质,还是重新制作新的图片比较好。 S
以下是UI穿透3D物体遮挡显示的shader: Shader "UI/Overlay" { Properties { [PerRendererData] _MainTex("Font Texture", 2D) = "white" {} _Color("Tint", Color) = (1,1,1,1) _StencilComp("Stencil Comparison", Fl
unity开发过程中 常会遇到一个问题 UI被3D模型给遮挡 新建一个材质球 和shader 将shader挂载材质 给被遮挡的ui材质即可解决 Shader "UI/Test" { Properties { [PerRendererData] _MainTex("Font Texture", 2D) = "white" {} _Color("Tint", Color) = (1,1
毫无质量的一篇文章,只是找个地方存一下shader Shader "Unlit/BloomUIDefalut" { Properties { [PerRendererData] _MainTex("Sprite Texture", 2D) = "white" {} [HDR]_Color("Tint", Color) = (1,1,1,1) _StencilComp("Stenc
如果你不想重复造轮子,你可以选择一款响应式的框架,目前市面上类似的框架也有很多,像Bootstrap、Foundation,你也可以使用像H5 Boilerplate来创建响应式项目,但不论你使用何种方式,掌握底层的原理对于你来说比挑选一门框架更有意义。所以大家Fighting~~~
问题内容: 问题很简单:假设我有一个完全可响应的后端,如何将其流式传输到浏览器(例如大文本),并在每个块来自服务器时立即将它们打印给用户? 可能我缺少一些重要的概念性要点,但是我所需要知道的是:是否可以通过一个HTTP GET(或否)请求发送少量数据(从服务器到浏览器)?关键是:在发送全部数据之前,我可以写那些小的部分吗? 谢谢你的帮助。我以前确实尝试过google,但是我总是会得到其他概念(例如
自我介绍 聊实习聊项目 从实习中学习到了什么,实习期间主要工作,项目的一些具体技术和实现方法 接下来就是常规八股: JS正则表达式 CSS左侧固定右侧自适应布局实现 移动端适配方案有哪些 前端性能优化方法 vue响应式原理,vue2和vue3区别 vue组件间通信方式 webpack优化策略:Tree Shaking,HMR git指令 防抖和节流实现具体细节 es6新特性有哪些 无任何算法题和手
8.23号面试的,面试官也是直接说面试通过,但是过了几小时收到了面试满意度调查表,可能排序挂了吧。20天之后也没有收到二面通知 ##面试问题 为啥本科是计算机,研究生专业变成生物了(调剂了) vue和react哪个更熟(vue),怎么学习react的 看你项目里面有用到unity3d,说一说对unity3d的理解 localstorege和sessionstorege的区别 BFC 原型和原型链
9月中旬笔试 10.25一面 40分钟 面试官自我介绍 自我介绍 项目介绍 瀑布流怎么实现的?还有哪些方案?说纯CSS实现。 文件上传拖拽怎么实现?(忘记说dragover阻止默认行为被面试官提醒) 秒传怎么实现?为什么需要生成Hash值?使用什么生成?整个流程说一下? 说说wasm,计算优化了多少有做测试吗?使用worker提升了多少?worker通信方式? CSS八股(问了好多,有一个场景题没
总体体验还是不错的,面试官小哥哥也很亲切,遇到不会的还给我仔细讲解了一下,以下是本次面试的问题,小伙伴们冲压!!! react部分 1.用过哪些hooks 2.hooks可以写在if判断语句里吗 3.介绍一下fiber (介绍完毕后面试官又反问: 任务的打断与恢复,打断一般指高优的任务去打断低优的任务,那低优的任务会被一直打断吗?还是说会有一个限制?为什么?) vue3部分 1.讲一下双向绑定的原
项目难点 (刚才提到了 Blink)说一下 Blink 是干什么的(答的是 Chrome 浏览器内核),Chrome 浏览器除了 Blink 还用了什么(没太听懂,答的是之前用 Webkit 内核) ES6 新特性 Map 和 Object 的区别 WeakMap 了解过吗(×) 箭头函数的特点 generator 了解过吗(×),yield 后面跟一个异步任务会怎么样(×) 说一下构造函数和原型
前端框架图图形展示: 如上图所示,WeX5前端框架(UI2)分以下部分: 基础库 WeX5前端依赖的两个基础库:数据感知MVVM和jQuery,其中数据感知MVVM基于Knockoutjs改进的。 模块框架 UI2遵循AMD模块标准,采用RequireJS实现。模块化是UI2的基础,UI2的所有资源(包括js、css和html等)都是模块,都采用模块化方式引入,采用模块化方式管理依赖。 组件框架