css过渡,css动画,页面布局分析,表单元素

简介:
一、css过渡
/* 1.css样式在发生变化时,默认是直接变化,没有过渡的动画效果 */
/* 将某个样式设置为过渡时,这个样式在发生变化时,会执行过渡动画 */

/* transition-property: background-color; */
/* 2.设置元素过渡的样式,设置为all则表示过渡所有的样式 */

/* transition-duration: 0.7s; */
/* 3.设置过渡时间,s 秒,ms 毫秒,1s=1000ms */

/* transition-timing-function: linear; */
/* 4.动画执行速率,linear匀速 */

/* transition-delay: 1s; */
/* 5.延时 */


/*6. transition可以设置多个过渡样式 */
/* 样式 时间 速率 */
transition : all 0.7s linear ;
/* 动画速率默认值为ease-in-out,先加速后减速 (开始慢中间快最后慢)
ease-in 加速动画(开始慢最后快)
ease-out 减速动画(开始快最后慢)*/



/*1.要过渡的样式必须有初始值,没有初始值无法过渡 */
/* 2.并不是所有的样式都能过渡,一般情况下,和元素外观有关的样式都能过渡,比如:color、宽高、左右上下、border、transform等
但是和元素布局、定位有关的元素,一般不能过渡*/
/* */

#box:hover {
background-color : yellow ;

transform : scale ( 2 , 2 ) rotate ( 180deg );
border : solid 10px red ;
border-radius : 50% ;
}

/* 当鼠标按下去的时候 */
#box:active {
/* 设置元素阴影 */
/* 横向偏移量 纵向偏移量 模糊成都 阴影大小 阴影颜色 */
box-shadow : 0 0 100px 0 red ;
}
二、元素阴影

/*1. 横向偏移量(右) 纵向偏移量 模糊(0表示不模糊) 大小*/
/* box-shadow: 5px 5px 20px 10px black; */

/*2. 平时:往右下、模糊大一点、模糊可以写负数 */
box-shadow : 5px 5px 10px 10px gray ;

/*4. inset 设置阴影在元素内 */
/* 五子棋 */
box-shadow : 0px 0px 5px 0px black inset ;

/* 1.文本阴影主要用于当文本颜色和背景颜色相似时突出文本显示 */
/* text-shadow设置文本阴影,横向偏移量、纵向偏移量、模糊程度、阴影颜色 */
text-shadow : 5px 5px 5px black ;

三、关键帧动画
/* fps(frames per second),一般都是每秒60帧,帧数越多越流畅 */

/* 1.让一个元素做关键帧动画,*/
/* 第一步 :创建动画,叫move,至少两帧 */
@keyframes move {
/* 0%表示动画开始的关键帧 */
0%{
transform : translate ( 100px , 0 );
animation-timing-function : ease-in ;
}

/*100%表示动画结束的关键帧 */
100%{
transform : translate ( 100px , 0px );
}
}


/* 想让哪个元素做动画,就把动画添加到元素上 */
#box {
width : 100px ;
height : 100px ;
background-color : red ;

/* 第二步:把动画添加到元素上 */
/* 1.animation-name,动画名字,设置本元素执行哪个动画 */
animation-name : move ;
/* 2.设置单次动画的执行时间 */
animation-duration : 1s ;

/* 3.设置动画状态是否保留,设置为both可以保留动画结束时,动画的样式 */
animation-fill-mode : both ;

/* 4.设置动画执行速率,默认为ease-in-out,
匀速使用linear
ease-in 加速动画(开始慢最后快)
ease-out 减速动画(开始快最后慢)*/
animation-timing-function : linear ;
/* 5.设置动画多久后执行 */
animation-delay : 1s ;

/* 6.设置动画方向 reverse反向方向*/
/* animation-direction: reverse; */

/* 7.设置动画重复次数,默认为1, infinite无限*/
animation-iteration-count : infinite ;
}

/* 第二个旋转动画 */

#d2 {
width : 100px ;
height : 100px ;
background-color : rebeccapurple ;
margin : 50px auto ;

text-align : center ;
line-height : 100px ;
}
#d2:hover {
/*1. 设置鼠标放上去,停止动画 */
/* animation-name: none; */

/* 2.设置动画执行状态,默认为running,设置为paused可以暂定动画 */
animation-play-state : paused ;
}
@keyframes spin {
0%{
transform : rotate ( 0 );
}
100%{
transform : rotate ( 360deg );
}
}
/* 把动画写进一个class里,让元素直接调用 */
.spin {
animation-name : spin;
animation-duration : 1s ;
animation-timing-function : linear ;
animation-iteration-count : infinite ;
}


四、表单元素
<!--1. input,输入框,行内块元素,可以设宽高 -->
<input type = "text" placeholder = "请输入账号" >

<!-- 2.button,按钮,行内块 -->
<button> 按钮 </button>
<br>

<!-- 3.label,标签,用于关联一个其他表单元素,for属性需要写要关联的元素的id,点击label
就相当于点击了关联的元素 -->
<label for = "psw" > 密码: </label>
<!-- input,type设置为password,表示密码输入框 -->
<input id = "psw" type = "password" >

<hr>

<p> 请你选择认为夺冠的队伍 </p>
<!-- 4.input,type=radio时,表示单选框,处于同一组的单选框只能选中一个值,
将多个radio设置相同的name属性,就可以成为同一组 -->
<label for = "" > 法国 </label>
<input type = "radio" name = "team" >
<label for = "" > 中国 </label>
<input type = "radio" name = "team" >
<label for = "" > 英格兰 </label>
<input type = "radio" name = "team" >
<label for = "" > 克罗地亚 </label>
<input type = "radio" name = "team" >

<hr>
<!-- 5.input,type=checkbox时,表示多选框 -->
<label for = "" > 白菜 </label>
<input type = "checkbox" >
<label for = "" > 萝卜 </label>
<input type = "checkbox" >

<hr>

<!-- 6.select ,下拉列表,行内块元素 -->
<label for = "school" > 请选择你的学校 </label>
<select id = "school" >
<!-- option,下拉列表项 -->
<option value = "" > 清华 </option>
<option value = "" > 北大 </option>
<option value = "" > 郑大 </option>
<option value = "" > 机电 </option>
</select>
</body>


五、 第三方动画库
<head>
<meta charset = "UTF-8" >
<meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
<meta http-equiv = "X-UA-Compatible" content = "ie=edge" >
<title> 4.第三方动画库.htm </title>
<link rel = "stylesheet" href = "animate.css" >
<style>
#title {
text-align : center ;
margin : 50px 0 ;
color : brown ;
/* display: flex; */
}
</style>
</head>

<body>
<!-- 1.调用动画名 -->
<!-- 2.调用动画执行时间,这个是固定的,必须调用 -->
<h1 id="title" class="swing animated " > Animate.css </h1>
</body>

</html>

目录
相关文章
|
27天前
|
机器学习/深度学习 前端开发 JavaScript
|
9天前
|
前端开发 搜索推荐 UED
实现 CSS 动画效果的兼容性
【10月更文挑战第16天】实现 CSS 动画效果的兼容性需要对不同浏览器的特性有深入的了解,并采取适当的策略和方法。通过不断的实践和优化,你可以在各种浏览器上创造出流畅、美观且兼容的动画效果,为用户带来更好的体验。在实际开发中,要密切关注浏览器的发展动态,及时掌握最新的兼容性技巧和解决方案,以确保你的动画设计能够在广泛的用户群体中得到良好的呈现。
|
13天前
|
前端开发 JavaScript API
探索 CSS Houdini:轻松构建酷炫的 3D 卡片翻转动画
本文通过构建一个 3D 翻卡动画深入探讨了 CSS Houdini 的强大功能,展示了如何通过 Worklets、自定义属性、Paint API 等扩展 CSS 的能力,实现高度灵活的动画效果。文章首先介绍了 Houdini 的核心概念与 API,并通过构建一个动态星空背景、圆形进度条以及交互式 3D 翻卡动画的实际示例,展示了如何利用 CSS Houdini 赋予网页设计更多创造力。最后,还演示了如何将这种 3D 翻卡效果集成到公司网站中,提升用户体验。CSS Houdini 的创新能力为网页设计带来了前所未有的灵活性,推动了前端开发迈向新的高度。
19 0
探索 CSS Houdini:轻松构建酷炫的 3D 卡片翻转动画
|
5天前
CSS_定位_网页布局总结_元素的显示与隐藏
CSS_定位_网页布局总结_元素的显示与隐藏
10 0
|
19天前
|
前端开发
css 块元素、行内元素、行内块元素相互转换
css 块元素、行内元素、行内块元素相互转换
48 0
|
2月前
|
JavaScript 前端开发
JS配合CSS3实现动画和拖动小星星小Demo
本文通过代码示例展示了如何使用JavaScript和CSS3实现动画效果和拖动小星星的交互效果,包括文字掉落动画和鼠标拖动产生小星星动画的实现方法。
37 0
JS配合CSS3实现动画和拖动小星星小Demo
|
24天前
|
前端开发
CSS 动画介绍及语法
CSS 动画介绍及语法
24 0
|
3月前
|
前端开发 容器
最新CSS3定位元素
【8月更文挑战第28天】
27 5
|
3月前
|
前端开发 UED 开发者
有趣的CSS - 文字加载动画效果
这个文本加载动画简单而有趣,可以在网站标题、广告标语或者关键信息的展示上吸引用户的注意力。开发者可以根据需要调整动画的持续时间、步骤数,或者光标颜色等,来适应特定的设计需求。使用这种动态元素,增强网站的互动性和用户体验,同时也为网站增添了一抹活泼的风格。
53 5
|
6月前
|
前端开发 内存技术
CSS动画示例(上一篇是CSS过渡…)
CSS动画示例(上一篇是CSS过渡…)