作者:Ben Frain
学习时间 2016/5/12
第一章 设计入门
*视口调试工具
IE:Microsoft Internet Explorer Develop Toolbar
Safari:Resize
Firefox:Firesizer
Chrome:Windows Resizer
*在线创意源泉
响应式设计创意收集网站 http://mediaqueri.es
第二章:媒体查询,支持不同的视口
<!--该检测中,只要满足screen projection 两个条件中的任意一个条件,就执行文件--> <link rel="stylesheet" media="screen and(orientation:portrait) and (min-800px),projection " href="800width-portration.css">
还有一种方式是@import
<style> @import url("phone.css") screen and (max- 360px); </style>
*媒体查询能查询哪些特征
# 视口宽度
# height: 视口高度
# device- 设备屏幕的宽度
# device-height: 设备屏幕的高度
# orientation: 检查设备处于横向还是纵向
# aspect-ratio:基于视口宽度高度的宽高比
# device-aspect-ratio: 屏幕的宽高比
# color: 颜色的位数
# color-index: 设备的颜色索引表中的颜色数
# monochrome
#resolution
#scan
#grid
*加载媒体查询的最佳方法
Respond.js是为IE8及更低版本增加媒体查询支持的最快的js工具,但是无法解析@import 命令
*重置样式
Eric Meyer 的重置样式表(http://meyerweb.com/eric/tools/css/reset)
针对HTML5 有更好的选择,normalize.css(http://necolas.github.com/normalize.css/)
第三章:拥抱流式布局
*将 px 换成 % em,这样的相对单位,公式
目标元素宽度/上下文元素宽度=百分比宽度
目标元素尺寸/上下文元素尺寸=百分比尺寸
*设置自适应图片
为不同的屏幕尺寸提供不同大小的图片,方案 Adaptive Images , http://adaptive-images.com
*CSS网格系统 快速布局
columnal(http://www.columnal.com)
第四章:响应式设计中的HTML5
*样板文件 (http://html5boilerplate.com)
*响应式视频 FitVids 插件
第五章:CSS
*@fant-face 的使用
网页字体:https://www.fontsquirrel.com/
*自动添加私有前缀的脚本 prefixfree
*渐变生成器 http://www.colorzilla.com/gradient-editor/
*CSS3 背景渐图案 http://lea.verou.me/css3patterns/
*可缩放图标 @font-face 图标,将常用字符做成特定字体 http://fico.lensco.be/ http://www.iconfont.cn/
*CSS3动画 transform transition animation 的用法
第八章:HTML5 CSS3征服表单
1:required 是否必填 ,required aria-required=“true”
<form> <label for="a"></label> <input id="a" name="a" type="text" required aria-required="true"></input> </form>
2:autofocus , 让表单在加载完成后有一个表单被自动聚焦
<form> <label for="b"></label> <input id="b" name="b" type="text" required aria-required="true" autofocus></input> </form>
3:autocomplete , 自动完成
<form> <label for="b"></label> <input id="b" name="b" type="text" required aria-required="true" autocomplete="off"></input> </form>
4:list 出现备选值
<form> <label for="b"></label> <input id="b" name="b" type="text" list="alist"></input> <datalist id="alist"> <section> <option value="1"></option> <option value="2"></option> <option value="3"></option> <option value="4"></option> </section> </datalist> </form>
5:email
<form> <label for="e"></label> <input id="e" name="e" type="email" ></input> </form>
6:number
<form> <label for="f"></label> <input id="f" name="f" type="number" ></input> </form>
7:url
<form> <label for="g"></label> <input id="g" name="g" type="url" ></input> </form>
8:tel
<form> <label for="h"></label> <input id="h" name="h" type="tel" ></input> </form>
9:search
<form> <label for="i"></label> <input id="i" name="i" type="search" ></input> </form>
10:pattern
<form> <label for="j"></label> <input id="j" name="j" pattern="([a-zA-Z]{3,30}s*)+[a-zA-Z]{3,30}"></input> </form>
11:color
<form> <label for="j"></label> <input id="j" name="j" type="color"></input> </form>
12:date month week time datetime datetime-local
<form> <label for="h"></label> <input id="h" name="h" type="date"></input> </form>
13:range
<form> <label for="k"></label> <input id="k" name="k" type="range" min="1" max="100" onchange="showValue(this.value)" value="5"><span id="range">5</span></input> </form> <script type="text/javascript"> function showValue(newvalue){ document.getElementById('range').innerHTML=newvalue; } </script>
* webshim 解决 部分浏览器不支持H5 CSS3 的问题
<script src="js/jquery.js"></script> <script src="js-webshim/minified/polyfiller.js"></script> <script> // load and implement all unsupported features webshims.polyfill(); // or only load a specific feature //webshims.polyfill('forms es5'); </script>