H5和css3的新特性

html-css019

H5和css3的新特性,第1张

    例如     <input type="month">可以选择年月日

例如  <input type="text" placeholder="请输入" >

显示在input输入框 默认显示的文字 

例如 鼠标滑动事件

实例

<canvas id="myCanvas" width="200" height="100"style="border:1px solid #000000"></canvas>

    <video src=""></video>

    <audio src=""></audio>

用法一样 例如

        // 设置本地存储

        localStorage.setItem("lastname", "Smith")

        // 获取本地存储

        document.getElementById("result").innerHTML = localStorage.getItem("lastname")

draggable属性是html5的全局属性,是html5支持拖放操作的方式之一,用来表示元素是否可以被拖放,draggable有三个值,true表示可以拖放,false表示不可以被拖放,auto表示使用浏览器的默认值

在h5中,如果想拖拽元素,就必须为元素添加draggable="true"。图片和超链接默认就可以拖拽

<div draggable="true">123</div>

:last-child /* 选择元素最后一个孩子 */

:first-child /* 选择元素第一个孩子 */

:nth-child(1) /* 按照第几个孩子给它设置样式 */

:nth-child(even) /* 按照偶数 */

:nth-child(odd)  /* 按照奇数 */

:disabled /* 选择每个禁用的E元素 */

:checked /* 选择每个被选中的E元素 */

:not(selector) /* 选择非 selector 元素的每个元素 */

::selection /* 选择被用户选取的元素部分 */

伪类元素选择器

:last-child /* 选择元素最后一个孩子 */

:first-child /* 选择元素第一个孩子 */

:nth-child(1) /* 按照第几个孩子给它设置样式 */

a:link {color: #FF0000} /* 未访问的链接 */

a:visited {color: #00FF00} /* 已访问的链接 */

a:hover {color: #FF00FF} /* 鼠标移动到链接上 */

a:active {color: #0000FF} /* 选定的链接 */

background-size:规定背景图片的尺寸(cover:填充;100% 100%:拉伸)

background-origin:规定背景图片的定位区域

对于 background-origin 属性,有如下属性

背景图片可以放置于 content-box、padding-box 或 border-box 区域

border-radius:圆角

box-shadow / text-shadow:阴影

border-image:边框图片

2D/3D 转换

2D 转换(transform)

translate():元素从其当前位置移动,根据给定的 left(x 坐标) 和 top(y 坐标) 位置参数。 transform: translate(50px, 100px)

rotate():元素顺时针旋转给定的角度。若为负值,元素将逆时针旋转。transform: rotate(30deg)

scale():元素的尺寸会增加或减少,根据给定的宽度(X 轴)和高度(Y 轴)参数,也可以一个值(宽高)。transform: scale(2,4)

skew():元素翻转给定的角度,根据给定的水平线(X 轴)和垂直线(Y 轴)参数。transform: skew(30deg, 20deg)

matrix(): 把所有 2D 转换方法组合在一起,需要六个参数,包含数学函数,允许您:旋转、缩放、移动以及倾斜元素。transform:matrix(0.866,0.5,-0.5,0.866,0,0)

3D 转换

rotateX():元素围绕其 X 轴以给定的度数进行旋转。transform: rotateX(120deg)

rotateY():元素围绕其 Y 轴以给定的度数进行旋转。transform: rotateY(130deg)

perspective:规定 3D 元素的透视效果

transition-property :执行动画对应的属性,例如 color,background 等,可以使用 all 来指定所有的属性。

transition-duration:过渡动画的一个持续时间。

transition-timing-function:在延续时间段,动画变化的速率,常见的有:ease | linear | ease-in | ease-out | ease-in-out | cubic-bezier

transition-delay:延迟多久后开始动画

先定义 @keyframes 规则(0%,100% | from,to)

然后定义 animation,以下参数可直接写在 animation 后面

animation-name: 定义动画名称

animation-duration: 指定元素播放动画所持续的时间长

animation-timing-function: ease | linear | ease-in | ease-out | ease-in-out | cubic-bezier(, , , ): 指元素根据时间的推进来改变属性值的变换速率,即动画的播放方式

animation-delay: 指定元素动画开始时间

animation-iteration-count: infinite | number:指定元素播放动画的循环次数

animation-direction: normal | alternate: 指定元素动画播放的方向,其只有两个值,默认值为normal,如果设置为 normal 时,动画的每次循环都是向前播放;另一个值是 alternate,规定动画在下一周期逆向地播放(来去播放)

animation-play-state: running | paused :控制元素动画的播放状态

实例

   div{

            width: 200px

            height: 100px

            background: pink

            animation: move 1s linear 

        }

        @keyframes move {

            0%{

                width: 0

            }

            100%{

                width: 500px

            }

        }

通过CSS3,能够创建多个列来对文本进行布局

column-count: 规定元素应该被分隔的列数

column-gap: 规定列之间的间隔

column-rule: 设置列之间的宽度、样式和颜色规则

resize

box-sizing

outline-offset

resize 属性规定是否可由用户调整元素尺寸。如果希望此属性生效,需要设置元素的 overflow 属性,值可以是 auto、hidden 或 scroll

div { 

 resize: both/* none|both|horizontal|vertical*/ overflow: auto

}

box-sizing 属性可设置的值有 content-box、border-box 和 inherit

content-box 是W3C的标准盒模型,元素宽度 = 内容宽度 + padding + border:意思是 padding 和 border 会增加元素的宽度,以至于实际上的 width 大于原始设定的 width

border-box 是ie的怪异盒模型,元素宽度 = 设定的宽度,已经将 padding 和 border 包括进去了,比如有时候在元素基础上添加内距 padding 或 border 会将布局撑破,但是使用 border-box 就可以轻松完成

inherit:规定应从父元素继承 box-sizing 属性的值

outline-offset 属性对轮廓进行偏移,并在超出边框边缘的位置绘制轮廓

div {

        display: flex

        flex-direction: row

        /*弹性盒方向:主轴方向X轴  */

        flex-direction: column

        /* 弹性盒方向:主轴Y轴方向 */

        flex-direction: row-reverse

        /* 弹性盒方向:主轴方向X轴 倒叙 */

        flex-direction: column-reverse

        /* 弹性盒方向:主轴Y轴方向 倒叙*/

        flex-wrap: nowrap

        /* 弹性盒换行:不换行 默认的 */

        flex-wrap: wrap

        /* 弹性盒换行:换行 */

        /*设置主轴方向子元素排列顺序*/

        justify-content: flex-start

        /* 从左到右排列 默认的 */

        justify-content: flex-end

        /* 从尾部开始排列 不影响子元素排列顺序 */

        justify-content: center

        /* 从主轴居中对齐 */

        justify-content: space-around

        /* 平分主轴剩余空间 */

        justify-content: space-between

        /* 两边对齐,中间评分剩余空间 */

        justify-content: space-evenly

        /* 间距相同 */

    }

CSS 兼容内核

-moz-:代表FireFox浏览器私有属性

-ms-:代表IE浏览器私有属性

-webkit-:代表safari、chrome浏览器私有属性

-o-:代表opera浏览器私有属性

可以的,纯css做滑动门有两种办法,一个利用hover伪类,另一种就是设置锚点。对应两种方式触发滑动门效果,鼠标悬浮和点击。

下面各举一例,

鼠标悬浮触发:(此例ie6下无效,因其暂不支持li:hover的伪类)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8" />

<title>纯CSS下拉菜单</title>

<style type="text/css">

a{

font-size:12px

text-decoration:none

color:#000000}

li ul{

display:none

margin-left:5px}

li:hover ul{

width:306px

padding:20px

height:250px

display:block

}

li:hover .fira{border-bottom:#FFFFFF 1px solid

}#kpk{

position:relative

width:420px

}

#kpk>li{

float:left

list-style:none

margin-right:20px

}

#kpk>li .fira{

border:1px #c6c6c6 solid

}

.seca{

position:absolute

z-index:1

left:-5px

top:23px

border:1px #c6c6c6 solid

height:250px

width:306px

padding:20px

height:250px

}

.fira{

width:70px

display:block

line-height:22px

background-color:white

text-align:center

z-index:2

}</style>

</head><body>

<div>

<ul id="kpk">

<li>

<a href="#" class="fira">首页</a>

<ul class="seca" rel="first">

<li><A href="#" target=_self>1.首页新疆阜康铁路桥梁坍塌多节运煤车厢侧翻坠河</A></li>

<li><A href="#" target=_self>2.首页最高法:承诺不判赖昌星死刑没有超越法律程序</A></li>

<li><A href="#" target=_self>3.首页物权法:满70年住宅建设用地使用权将自动续期</A></li>

<li><A href="#" target=_self>4.首页弟弟被妻下药毒死男子买女尸为其配阴婚(图)</A></li>

<li><A href="#" target=_self>5.首页揭开郑州神枪手神秘面纱 头号狙击手是近视眼</A></li>

<li><A href="#" target=_self>6.首页美军高官:不排除和中国发生直接军事对抗可能</A></li>

<li><A href="#" target=_self>7.首页浙江东阳传奇富姐吴英涉嫌非法吸收存款被批捕</A></li>

<li><A href="#" target=_self>8.首页西方炒作"中国航母威胁论"称05年已正式服役</A></li>

<li><A href="#" target=_self>9.首页女孩生活无法自理请人大代表递交安乐死议案</A></li>

<li><A href="#" target=_self>10.首页建设部:住房公积金制度将覆盖农民工</A></li>

</ul>

<!--<ul>

<li>11</li>

<li>12</li>

<li>13</li>

</ul>-->

</li>

<li>

<a href="#" class="fira">链接一</a>

<ul class="seca">

<li><A href="#" target=_self>1.链接一新疆阜康铁路桥梁坍塌多节运煤车厢侧翻坠河</A></li>

<li><A href="#" target=_self>2.链接一最高法:承诺不判赖昌星死刑没有超越法律程序</A></li>

<li><A href="#" target=_self>3.链接一物权法:满70年住宅建设用地使用权将自动续期</A></li>

<li><A href="#" target=_self>4.链接一弟弟被妻下药毒死男子买女尸为其配阴婚(图)</A></li>

<li><A href="#" target=_self>5.链接一揭开郑州神枪手神秘面纱 头号狙击手是近视眼</A></li>

<li><A href="#" target=_self>6.链接一美军高官:不排除和中国发生直接军事对抗可能</A></li>

<li><A href="#" target=_self>7.链接一浙江东阳传奇富姐吴英涉嫌非法吸收存款被批捕</A></li>

<li><A href="#" target=_self>8.链接一西方炒作"中国航母威胁论"称05年已正式服役</A></li>

<li><A href="#" target=_self>9.链接一女孩生活无法自理请人大代表递交安乐死议案</A></li>

<li><A href="#" target=_self>10.链接一建设部:住房公积金制度将覆盖农民工</A></li>

</ul>

<!--<ul>

<li>21</li>

<li>22</li>

<li>23</li>

</ul>-->

</li>

<li>

<a href="#" class="fira">链接二</a>

<ul class="seca">

<li><A href="#" target=_self>1.链接二新疆阜康铁路桥梁坍塌多节运煤车厢侧翻坠河</A></li>

<li><A href="#" target=_self>2.链接二最高法:承诺不判赖昌星死刑没有超越法律程序</A></li>

<li><A href="#" target=_self>3.链接二物权法:满70年住宅建设用地使用权将自动续期</A></li>

<li><A href="#" target=_self>4.链接二弟弟被妻下药毒死男子买女尸为其配阴婚(图)</A></li>

<li><A href="#" target=_self>5.链接二揭开郑州神枪手神秘面纱 头号狙击手是近视眼</A></li>

<li><A href="#" target=_self>6.链接二美军高官:不排除和中国发生直接军事对抗可能</A></li>

<li><A href="#" target=_self>7.链接二浙江东阳传奇富姐吴英涉嫌非法吸收存款被批捕</A></li>

<li><A href="#" target=_self>8.链接二西方炒作"中国航母威胁论"称05年已正式服役</A></li>

<li><A href="#" target=_self>9.链接二女孩生活无法自理请人大代表递交安乐死议案</A></li>

<li><A href="#" target=_self>10.链接二建设部:住房公积金制度将覆盖农民工</A></li>

</ul>

<!--<ul>

<li>31</li>

<li>32</li>

<li>33</li>

</ul>-->

</li>

<li>

<a href="#" class="fira">链接三</a>

<ul class="seca">

<li><A href="#" target=_self>1.链接三新疆阜康铁路桥梁坍塌多节运煤车厢侧翻坠河</A></li>

<li><A href="#" target=_self>2.链接三最高法:承诺不判赖昌星死刑没有超越法律程序</A></li>

<li><A href="#" target=_self>3.链接三物权法:满70年住宅建设用地使用权将自动续期</A></li>

<li><A href="#" target=_self>4.链接三弟弟被妻下药毒死男子买女尸为其配阴婚(图)</A></li>

<li><A href="#" target=_self>5.链接三揭开郑州神枪手神秘面纱 头号狙击手是近视眼</A></li>

<li><A href="#" target=_self>6.链接三美军高官:不排除和中国发生直接军事对抗可能</A></li>

<li><A href="#" target=_self>7.链接三浙江东阳传奇富姐吴英涉嫌非法吸收存款被批捕</A></li>

<li><A href="#" target=_self>8.链接三西方炒作"中国航母威胁论"称05年已正式服役</A></li>

<li><A href="#" target=_self>9.链接三女孩生活无法自理请人大代表递交安乐死议案</A></li>

<li><A href="#" target=_self>10.链接三建设部:住房公积金制度将覆盖农民工</A></li>

</ul>

<!--<ul>

<li>41</li>

<li>42</li>

<li>43</li>

</ul>-->

</li>

</ul>

</div>

</body>

</html>

锚点点击例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html>

<head>

<title>左右布局</title>

<style type="text/css">

#nav{

width:303px

height:200px

border:1px solid #CCCCCC

}

#column a {

float:left

width:100px

border-right:1px solid #CCC

border-bottom:1px solid #CCC

font:bold 14px/30px Arial, Helvetica, sans-serif

color:#000

text-decoration:none

text-align:center

}

#contant {

width:303px

height:162px

overflow:hidden

}

ul {

margin:0

padding:0

list-style-type:none

padding:4px 0 0 5px

}

li {

font-size:12px

overflow:hidden

padding-left:2px

line-height:27px

}

</style>

</head>

<body>

<div id="nav">

<div id="column"><a href="#localnew">本地新闻</a><a href="#innernew">国内新闻</a><a href="#enterment" >娱乐新闻</a></div>

<div id="contant">

<ul id="localnew">

<li><a href="#">我喜欢CSS </a></li>

<li><a href="#">我喜欢CSS </a></li>

<li><a href="#">我喜欢CSS </a></li>

<li><a href="#">我喜欢CSS </a></li>

<li><a href="#">我喜欢CSS</a></li>

<li><a href="#">我喜欢CSS</a></li>

</ul>

<ul id="innernew">

<li><a href="#">我喜欢编程</a></li>

<li><a href="#">我喜欢编程</a></li>

<li><a href="#">我喜欢编程</a></li>

<li><a href="#">我喜欢编程 </a></li>

<li><a href="#">我喜欢编程</a></li>

<li><a href="#">我喜欢编程</a></li>

</ul>

<ul id="enterment">

<li><a href="#">我喜欢美工</a></li>

<li><a href="#">我喜欢美工</a></li>

<li><a href="#">我喜欢美工</a></li>

<li><a href="#">我喜欢美工</a></li>

<li><a href="#">我喜欢美工 </a></li>

<li><a href="#">我喜欢美工</a></li>

<li><a href="#">我喜欢美工</a></li>

</ul>

</div>

</div>

</body>

</html>

楼主自行copy代码到本地查看,样式微调。。。