HTML5知识框架总结分享
2022-10-13 10:37:24 0 举报
AI智能生成
登录查看完整内容
为你推荐
查看更多
HTML5知识框架总结分享
作者其他创作
大纲/内容
Canvas
元素拖拽
音频、视频
页眉
header
页脚
footer
主导航
nav
文档的主要内容,(whatwg没有语义,IE不支持)
main
页面中的一节或文章中的一段,通常带有标题
section
定义文章、博客、帖子、评论等
article
定义侧边栏
aside
包裹连续的标题,如文章主标题和副标题的组合(w3c将其删除)
hgroup
语义化结构标签
表示状态,电池、温度
含义
值,默认最大值是1
value
最高值
max
最低值
min
较高预警阈值
high
较低预警阈值
low
optimum
属性
meter{<br> width:400px;<br> height:30px;<br>}
meter::-webkit-meter-bar{<br> /* 可以设置总体边框,空白区域背景等 */<br> backgroud:#fff;<br> border:1px solid #ccc;<br>}
meter::-webkit-meter-optimum-value{<br> /* 设置最优值范围内的样式 */<br>}
meter::-webkit-meter-suboptimum-value{<br> /* 凑合 范围内的样式 */<br>}
meter::-webkit-meter-even-less-good-value{<br> /* 糟糕 范围内的样式 */<br>}
样式
meter
进度条
最大值
progress{<br> width:400px;<br> height:30px;<br> border:1px solid #ccc;<br>}
progress::-webkit-progress-bar{<br> background: #fff;<br>}
progress::-webkit-progress-value{<br> background: green;<br>}
progress
状态
百度搜索框,下面的输入提示
<input type="text" list="searchOption"><br><datalist id="searchOption"><br> <option value="a"></option><br> <option value="ab"></option><br> <option value="abc"></option><br> <option value="abcd"></option><br> <option value="aaa"></option><br> <option value="acc"></option><br> <option value="bcc"></option><br> <option value="cdd"></option><br></datalist>
datalist
展开内容
<details open><br> <summary>大前端</summary><br> <p>HTML5</p><br> <p>CSS3</p><br> <p>JavaScript</p><br> </details>
open
details
列表
文字上带拼音
<ruby>魑 <rt>chi</rt></ruby><br> <ruby>魅 <rt>mei</rt></ruby>
ruby
注释
文字涂色,搜索结果标记关键字
背景色、字体
mark {<br> background: red;<br> }
mark
标记
文章内的插图,独立的内容<br>
<figure> <!--插图--><br> <img src="images/trump.jpg" alt=""><br> <figcaption>美国总统</figcaption> <!--配图说明--><br> </figure>
figure
图像
其他新增标签
新增标签
提示显示
placeholder
必填,无需设置值
required
闪烁焦点的输入框,无需设置值
autofoucs
自动完成,提示以前输入过的内容,值可设置为off/on
autocomplete
写正则表达式,表单验证
pattern
form表单控件(input、textarea、select...)
不进行校验,不用填值
novalidate
form元素
必须含@,并@的前后都有内容
email
必须以http开头
url
最小值,闭区间
最大值,闭区间
步长
step
参数
number
搜索框,无特殊功能
search
电话号码,pc端无特殊功能,移动端会弹出数字键盘
tel
范围,默认0-100
range
颜色,bgr格式
color
日期
date
年月
month
星期,第几周:2019-W25
week
时间:23:20
time
日期时间
datetime-local
input type新增值
表单新属性
设置meta
<script><br> (function () {<br> document.createElement('header');<br> document.createElement('footer');<br> document.createElement('nav');<br> document.createElement('article');<br> document.createElement('aside');<br> document.createElement('section');<br> document.createElement('main');<br> document.createElement('figure');<br><br> })();<br> </script>
js放在前面
创建元素
<!--[if lt IE 9]><br> <script src="js/html5shiv.min.js"></script><br> <![endif]--><br>
直接调用html5shiv.js
H5兼容性解决方案
定义
- 开发、维护、运营成本优势:页面只有一个,只是针对不同的分辨率、 不同的设备环境进行了一些不同的设计,所以在开发、维护和运营上, 相对多个版本,能节约成本。<br>- 兼容性优势:移动设备新的尺寸层出不穷,定制的版本通常只适用于某些规格的设备,如果新的设备分辨率变化较大,则往往不能兼容,而开发新的版本需要时间,这段时间内的访问就是个问题, 但是响应式Web设计可以提前预防这个问题。<br>- 操作灵活:响应式设计是针对页面的,可以只对必要的页面进行改动,其他页面不受影响。<br>
优势
所有设备
all
用于电脑屏幕、平板、手机等
screen
用于打印机和打印预览
print
主要内容
/*媒体查询 满足某种条件*/<br> @media print {<br> h1 {<br> font-size: 100px;<br> color: red;<br> }<br> }
写法
媒体类型
设备使用方向
水平方向
landscape
垂直方向
portrait
orientation
视口宽度
/*指定某个宽度*/<br> /*视口宽度 是 800px像素*/<br> @media (width:800px) {<br> h1 {<br> color: red;<br> background: #54ABD4;<br> }<br> }<br>
/*设置范围, 设置小于600px*/<br> /* 最大宽度是600px 小于等于600px*/<br> @media (max-width: 600px) {<br> h1 {<br> font-size: 100px;<br> color: red;<br> }<br> }
/*设置范围 大于等于 1000px*/<br> @media (min-width: 1000px) {<br> h1 {<br> font-size: 200px;<br> color: yellow;<br> }<br> }
width
and
/* 大于等于600 并且 小于等于 1000px*/<br> @media (min-width: 600px) and (max-width:1000px) {<br> h1 {<br> font-size: 100px;<br> color: red;<br> background: #333333;<br> }<br> }<br>
且
或
not
/*not 配合媒体类型来做*/<br> /*不是屏幕*/<br> @media not screen {<br><br> }
非
运算符
媒体特性
<!-- 第一种用法 link可以指定media属性, 加载不同的css--><br> <link rel="stylesheet" href="normal.css"><br> <link rel="stylesheet" href="mobile.css" media="(max-width:640px)">
<style><br> /*第二种 在imort 导入css的后面 跟上 媒体类型 不建议使用*/<br> /*import url('style.css') print;*/<br><br><br> /*推荐 第三种 @media*/<br> @media screen and (max-width: 640px) {<br><br> }<br><br> </style>
媒体查询用法
媒体查询
小于768px,超小屏幕,手机
768px
大于768小于992px,小屏幕,平板
992px
大于992px小于1200px,中等屏幕
大于1200px大屏幕
1200px
常用设置一,三个断点
小于572,超小屏幕
576px
577-768,小屏幕
769-992,中等屏幕
993-1200,大屏幕
>1200,超大屏幕
常用设置二,四个断点
<=640px,小屏幕
640px
641-1024,中等屏幕
>1024,大屏幕
1024px
推荐设置三,两个断点
断点设置
* {<br> margin:0;<br> padding:0;<br> }<br> /*默认设置的样式 是移动端的样式*/<br> .container {<br> margin: 0 auto;<br> width: 100%; /*移动设备 宽度是100% < 768px*/<br> height: 300px;<br> background: #54ABD4;<br> }<br><br> /*当宽度 >=768px 的时候*/<br> /*作用f范围 768~991 */<br> @media screen and (min-width: 768px){<br> .container {<br> width: 750px;<br> }<br> }<br><br> /*当宽度 >=992 的时候*/<br> /* 992 ~ 1199*/<br> @media screen and (min-width: 992px) {<br> .container {<br> width: 970px;<br> }<br> }<br><br> /*当屏幕 》= 1200px*/<br> /*作用范围: >= 1200*/<br> @media screen and (min-width: 1200px) {<br> .container {<br> width: 1170px;<br> }<br> }
移动优先
* {<br> margin:0;<br> padding:0;<br> }<br> /*默人最大视口宽度的演示 > 1200*/<br> .container {<br> margin: 0 auto;<br> width: 1170px;<br> height: 300px;<br> background: #54ABD4;<br> }<br><br> /*当宽度 <= 1200的时候*/<br> /* 作用于 993 ~ 1200 */<br> @media screen and (max-width: 1200px) {<br> .container {<br> width: 970px;<br> }<br> }<br><br><br> /*当宽度 <= 992的时候*/<br> /* 769 ~ 992 */<br> @media screen and (max-width: 992px) {<br> .container {<br> width: 750px;<br> }<br> }<br><br><br> /*当宽度 <= 768的时候*/<br> @media screen and (max-width: 768px) {<br> .container {<br> width: 100%;<br> }<br> }
PC优先
端优先
响应式布局
CSS语法不够强大,无法嵌套书写,导致模块化开发中需要书写很多重复的选择器
没有变量和合理的样式复用机制,逻辑上相关的属性值必须以字面量的形式重复输出,难以维护
CSS预处理器提供CSS缺失的样式层复用机制,减少冗余代码,提高样式代码的可维护性
为什么用?
<style type="text/less"><br> // 定义变量<br> @width: 400px;<br> @height: 300px;<br> @color: #888;<br><br> #box {<br> position: absolute;<br> left: 50%;<br> top: 50%;<br> width: @width;<br> height: @height;<br> margin-left: -@width/2;<br> margin-top: -@height/2;<br> border: 2px solid @color;<br> }<br><br> </style><br> <script src="js/less.js"></script>
js编译
// 定义变量<br>@width: 500px;<br>@height: 300px;<br>@color: #f90;<br><br><br>#box {<br> position: absolute;<br> left: 50%;<br> top: 50%;<br> width: @width;<br> height: @height;<br> margin-left: -@width/2;<br> margin-top: -@height/2;<br> border: 2px solid @color;<br>}
index.less写入
考拉koala编译
npm install less -g
安装
lessc bootstrap.less bootstrap.css
使用
命令行编译
编译
/*css 的注释 变成成css的时候,这个注释还在*/
// less 的注释 编译成css的时候,没了
//把 less 变量当 css属性的值<br> width: @len;
当css属性值
// less变量作为属性名的时候 @{变量名}<br> @{bg}: @basecolor;
当属性名
// less 变量当做选择器的时候 @{变量}<br>#@{activeclass} {<br> width: 100px;<br> height: 100px;<br>}
当选择器
用途
// less 的作用域<br>@var: 100px;<br>#box {<br> @var:20px;<br><br> .inner {<br> @var: 50px;<br> width: @var; /*60*/<br> background-color: #ccc;<br> @var: 60px;<br><br> li {<br> background: red;<br> }<br> }<br><br> width: @var; /*20*/<br>}<br><br>.list {<br> height: @var; /*100*/<br>}
变量作用域
变量
类似于JavaScript的函数,可反复调用
// 普通混合 跟 类选择器一样<br>.center-box01 {<br> position: absolute;<br> left: 50%;<br> top: 50%;<br> width: 400px;<br> height: 300px;<br> margin-left: -200px;<br> margin-top: -150px;<br> background-color: #ccc;<br>}<br><br>.box01 {<br> border: 1px solid #999;<br> text-align:center;<br><br> // 调用混合<br> .center-box01();<br>}<br>
普通混合
//不带输出的混合 编译后css里不会输出<br>.center-box02() {<br> position: absolute;<br> left: 50%;<br> top: 50%;<br> width: 400px;<br> height: 300px;<br> margin-left: -200px;<br> margin-top: -150px;<br> background-color: #ccc;<br>}<br>.box02 {<br> // 调用混合<br> .center-box02();<br><br> border:1px solid #ccc;<br>}<br>.list {<br> // 调用不带参数的混合, 可以省略 ()<br> .center-box02;<br>}
不带输出的混合
带参数的混合
带默认参数值的混合
@arguments获取所有实参
类别
混合mixins
配合mixins使用
条件判断
// 导入混合 如果导入的是less文件,可以省略 后缀<br>@import "mixins/mixins";<br>@import "variables";<br>@import "base";
// css 语法, 直接输出到 css<br>@import "style.css";
导入
嵌套
操作符
less内置函数
map
Less
Sass
Stylus
主流的CSS预处理器
CSS预处理器
HTML5知识框架总结分享
0 条评论
回复 删除
下一页