【css】css动画实现的3种方式

2023-10-29

css实现动画主要有3种方式,①、transition实现过渡动画,②、transform转变动画,③、animation实现自定义动画。

一、transition过渡动画

1、语法

transition: property duration timing-function delay;

1、 transition: 属性是个复合属性

  • transition-property: 规定设置过渡效果的 css 属性名称
  • transition-duration: 规定完成过渡效果需要多少秒或毫秒
  • transition-timing-function:指定过渡函数, 规定速度效果的速度曲线
  • transition-delay: 指定开始出现的延迟时间

2、默认值为:transition: all 0 ease 0;
3、有多个 css 属性的过渡效果时:

transition: background 0.8s ease-in 0.3s, color 0.6s ease-out 0.3s;

2、子属性详解

2.1、transition-property

2.1.1、属性定义及使用说明

transition-property 属性指定 CSS 属性的 name transition 效果(transition 效果时将会启动指定的CSS属性的变化)。
提示:一个转场效果,通常会出现在当用户将鼠标悬停在一个元素上时。

始终指定 transition-duration 属性,否则持续时间为0,transition 不会有任何效果。

2.1.2、语法

transition-property: none | all | property;

在这里插入图片描述

2.1.3、css 属性实际使用时的设置

  1. color : background-color, border-color, color, outline-color ;
  2. length : 真实的数字。 如:word-spacing, width, vertical-align, top, right, bottom, left, padding, outline-width, margin, min-width, min-height, max-width, max-height, line-height, height, border-width, border-spacing,
  3. integer : 离散步骤(整个数字), 在真实的数字空间, 以及使用 floor()转换为整数时发生。 如: outline-offset, z-index;
  4. number : 真实的(浮点型)数值, 如:zoom, opacity, font-weight;
  5. rectangle : 通过x, y, width 和 height(转为数值)变换,如: crop;
  6. visibility : 离散步骤,在0到1数字范围之内,0表示“隐藏”,1表示完全“显示”,如:visibility;
  7. shadow : 作用于color, x, y 和 blur(模糊)属性,如:text-shadow;
  8. background-image : 通过每次停止时的位置和颜色进行变化。它们必须有相同的类型(放射状的或是线性的)和相同的停止数值以便执行动画。

2.1.4、示例

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>transition-property 属性值</title>
		<style>
			div {
				width: 100px;
				height: 100px;
				background: red;
				opacity: 1;

				transition-property: width, height, background, opacity;
				transition-duration: 2s;

				/* Safari */
				-webkit-transition-property: width, height, background, opacity;
				-webkit-transition-duration: 2s;
			}

			div:hover {
				width: 300px;
				height: 300px;
				background: blue;
				opacity: 0.1;
			}
		</style>
	</head>
	<body>
		<p><b>注意:</b> 该实例不支持Internet Explorer 9以及更早版本的浏览器.</p>

		<div>transition-property 属性值</div>

		<p>将鼠标移动至元素上查看过渡效果.</p>
	</body>
</html>

2.2、 transition-duration

 transition-duration: time;

该属性主要用来设置一个属性过渡到另一个属性所需的时间,也就是从旧属性过渡到新属性花费的时间长度, 俗称持续时间。

2.3、 transition-timing-function

2.3.1、语法

 transition-timing-function: linear | ease | ease-in | ease-out | ease-in-out | cubic-bezier(n,n,n,n);

该属性指的是过渡的 “缓动函数” 。 主要用来指定浏览器的过渡速度,以及过渡期间的操作进展情况。

值 cubic-bezier(n,n,n,n) 可以定义自己的值,如 cubic-bezier(0.42,0,0.58,1)

2.3.2、css 属性实际使用时的设置

在这里插入图片描述

2.3.3、示例

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>transition-timing-function 各项属性值的效果</title>
		<style>
			div {
				width: 100px;
				height: 50px;
				margin: 10px;
				color: white;
				font-weight: bold;
				transition: width 2s, height 2s;
				-webkit-transition: width 2s, height 2s;
				/* Safari */
			}
			#div1 {
				transition-timing-function: linear;
			}
			#div2 {
				transition-timing-function: ease;
			}
			#div3 {
				transition-timing-function: ease-in;
			}
			#div4 {
				transition-timing-function: ease-out;
			}
			#div5 {
				transition-timing-function: ease-in-out;
			}

			/* Safari */
			#div1 {
				-webkit-transition-timing-function: linear;
			}
			#div2 {
				-webkit-transition-timing-function: ease;
			}
			#div3 {
				-webkit-transition-timing-function: ease-in;
			}
			#div4 {
				-webkit-transition-timing-function: ease-out;
			}
			#div5 {
				-webkit-transition-timing-function: ease-in-out;
			}
			div:hover {
				width: 300px;
				height: 300px;
			}
		</style>
	</head>
	<body>
		<p><b>注意:</b> 该属性不兼容 IE 9 以及更早版本的浏览器</p>

		<div id="div1" style="top:100px; background: red;">linear</div>
		<div id="div2" style="top:150px; background: blue;">ease</div>
		<div id="div3" style="top:200px; background: green;">ease-in</div>
		<div id="div4" style="top:250px; background: gray;">ease-out</div>
		<div id="div5" style="top:300px; background: pink;">ease-in-out</div>

		<p>将鼠标移动至块上查看过渡动画效果.</p>
	</body>
</html>

2.4. transition-delay

 transition-delay: time;

指定何时将开始切换效果,单位秒或者毫秒

3、示例

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>transition 过渡动画</title>
		<style>
			div {
				width: 100px;
				height: 100px;
				background-color: #ff194e;
				border-width: 5px;
				border-style: solid;
				border-color: #5daf34;
				/* transition-property: width, height, background-color, border-width, border-color;
			      transition-duration: 2s;
			      transition-timing-function: ease-in;
			      transition-delay: 500ms; */

				/*简写*/
				/* transition: all 2s ease-in 2s; */

				/* 全部 */
				transition: width 2s ease-in 0.2s, height 2s ease-in 0.2s, background-color 2s ease-in 2s, border-width 2s ease-in 2s, border-color 2s ease-in 2s;
				-webkit-transition: width 2s ease-in 0.2s, height 2s ease-in 0.2s, background-color 2s ease-in 2s, border-width 2s ease-in 2s, border-color 2s ease-in 2s,
			}

			div:hover {
				width: 200px;
				height: 200px;
				background-color: #5daf34;
				border-width: 10px;
				border-color: #e61a5b;
			}
		</style>
	</head>
	<body>
		<div>transition 过渡动画</div>
	</body>
</html>

二、transform 转变动画

可以利用 transform 功能来实现文字或图像的 旋转、缩放、倾斜、移动 这四种类型的变形处理

1、旋转 rotate

1.1、 用法: 主要分为2D旋转和3D旋转。

2D 旋转

 transform: rotate(45deg); // 顺时针旋转45度

3D旋转:围绕原地到(x,y,z)的直线进行3D旋转

 transform: rotate(x,y,z,angle);
  • x,y,z:分别表示 X、Y 和 Z 轴方向,都不能省略;
  • angle:设置对象设置对象的旋转角度,不能省略;
  • rotateX(angle),沿着X轴进行3D旋转;rotateY(angle),沿着Y轴进行3D旋转;rotateZ(angle),沿着Z轴进行3D旋转;
  • 一个参数 “角度”,单位 deg 为度的意思,正数为顺时针旋转,负数为逆时针旋转。
    3D坐标系

1.2、示例

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>transform 变形--旋转 rotate</title>
		<style>
			*, *:after, *:before {
				box-sizing: border-box;
			}
			.fill {
				display: inline-block;
				width: 100px;
				height: 100px;
				margin: 10px;
				position: relative;
				background: #03A9F4;
				opacity: .5;
				box-shadow: 0 0 5px #ccc;
				-webkit-transition: 2s;
				transition: 2s;
			}
			.rotate:hover {
				-webkit-transform: rotate(45deg);
				transform: rotate(45deg);
			}
			.rotateX:hover {
				-webkit-transform: rotateX(45deg);
				transform: rotateX(45deg);
			}
			.rotateY:hover {
				-webkit-transform: rotateY(45deg);
				transform: rotateY(45deg);
			}
			.rotateZ:hover {
				-webkit-transform: rotateZ(45deg);
				transform: rotateZ(45deg);
			}
			.rotate-60:hover {
				-webkit-transform: rotate(-60deg);
				transform: rotate(-60deg);
			}
			.rotate3D:hover {
				-webkit-transform: rotate3d(1, 2, 1, 60deg);
				transform: rotate3d(1, 2, 1, 60deg);
			}
		</style>
	</head>
	<body>
		<div class="fill rotate">rotate(45deg) </div>
		<div class="fill rotateX">rotateX(45deg)</div>
		<div class="fill rotateY">rotateY(45deg)</div>
		<div class="fill rotateZ">rotateZ(45deg)</div>
		<div class="fill rotate-60">rotate(-60deg) </div>
		<div class="fill rotate3D">rotate3d(1,2,1,60deg)</div>
	</body>
</html>

2、缩放 scale

2.1、主要分为2D缩放和3D缩放

2D缩放

transform: scale(0.5);
transform: scale(0.5, 2);
  • 一个参数时: 表示水平和垂直同时缩放该倍率;
  • 两个参数时:第一个参数指定水平方向的缩放倍率,第二个参数指定垂直方向的缩放倍率 。

3D缩放

transform: scale3d(x, y, z);
transform: scaleX(x);
transform: scaleY(y);
transform: scaleZ(z);
  • x、y、z为收缩比例

2.2、示例

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>transform 变形--缩放 scale</title>
		<style type="text/css">
			div {
				display: inline-block;
				width: 200px;
				height: 100px;
				margin: 200px 10px;
				position: relative;
				background-color: #57ff9d;
				-webkit-transition: 2s;
				transition: 2s;
			}
			.scale1:hover {
				-webkit-transform: scale(0.5);
				transform: scale(0.5);
			}
			.scale2:hover {
				-webkit-transform: scale(0.5, 2);
				transform: scale(0.5, 2);
			}
			.scaleX:hover {
				-webkit-transform: scaleX(0.5);
				transform: scaleX(0.5);
			}
			.scaleY:hover {
				-webkit-transform: scaleY(2);
				transform: scaleY(2);
			}
			.scaleZ:hover {
				-webkit-transform: scaleZ(0.6);
				transform: scaleZ(0.6);
			}
			.scale3d:hover {
				-webkit-transform: scale3d(0.5, 2, 1.5);
				transform: scale3d(0.5, 2, 1.5);
			}
		</style>
	</head>
	<body>
		<div class="box scale1">scale(0.5)</div>
		<div class="box scale2">scale(0.5,2)</div>
		<div class="box scaleX">scaleX(0.5);</div>
		<div class="box scaleY">scaleY(2);</div>
		<div class="box scaleZ">scaleZ(0.6)</div>
		<div class="box scale3d">scale3d(0.5,2, 1.5);</div>
	</body>
</html>

3. 倾斜 skew

transform: skew(30deg) ;
transform: skew(30deg, 30deg);
  • 一个参数时:表示水平方向的倾斜角度 ;
  • 两个参数时:第一个参数表示水平方向的倾斜角度,第二个参数表示垂直方向的倾斜角度 。
  • skew 的默认原点 transform-origin 是这个物件的中心点
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>transform 变形--倾斜 skew</title>
		<style type="text/css">
			div {
				display: inline-block;
				width: 100px;
				height: 100px;
				margin: 100px;
				position: relative;
				background-color: #57ff9d;
				-webkit-transition: 2s;
				transition: 2s;
				font-size: 0px; //没有这个4个盒子不会放在同一水平位置
			}
			.skew:hover {
				-webkit-transform: skew(45deg);
				transform: skew(45deg);
			}
			.skewXY:hover {
				-webkit-transform: skew(45deg, 30deg);
				transform: skew(45deg, 30deg);
			}
			.skewX:hover {
				-webkit-transform: skewX(75deg);
				transform: skewX(75deg);
			}
			.skewY:hover {
				-webkit-transform: skewY(15deg);
				transform: skewY(15deg);
			}
		</style>
	</head>
	<body>
		<hr style="position: absolute;top: 100px;width: 90%;">
		<div class="skew"> </div>skew(45deg)
		<div class="skewXY"></div> skew(45deg, 30deg)
		<div class="skewX"></div> skewX(75deg)
		<div class="skewY"></div> skewY(15deg)
		<hr style="position: absolute;top: 200px;width: 90%;">
	</body>
</html>

4. 移动 translate

4.1、2D移动

transform: translate(45px);
transform: translate(45px, 150px); //沿着X轴和Y轴同时移动
  • 一个参数时:表示水平方向的移动距离;
  • 两个参数时:第一个参数表示水平方向的移动距离,第二个参数表示垂直方向的移动距离 。

4.2、3D移动

transform: translateX(100px); //仅仅是在X轴上移动
transform: translateY(100px); //仅仅是在Y轴上移动
transform: translateZ(100px); //仅仅是在Z轴上移动(注意:translateZ一般都是用px单位)
transform: translate3d(x,y,z); //在x,y,z轴上都移动
  • transformZ的直观表现形式就是大小变化,实质是XY平面相对于视点的远近变化(说远近就一定会说到离什么参照物远或近,在这里参照物就是perspective属性)。比如设置了perspective为200px;那么transformZ的值越接近200,就是离的越近,看上去也就越大,超过200就看不到了,因为相当于跑到后脑勺去了,我相信你正常情况下,是看不到自己的后脑勺的。
  • x和y可以是长度值,也可以是百分比,百分比是相对于其本身元素水平方向的宽度和垂直方向的高度;z只能设置长度值。
<!DOCTYPE html>
<html lang="en">
	<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>transform 变形--移动 translate</title>
		<style>
			body {
				perspective: 800px;
			}
			div {
				display: inline-block;
				position: relative;
				width: 200px;
				height: 200px;
				margin: 150px;
				transition: .5s;
				background-color: pink;
				text-align: center;
				line-height: 200px;
			}
			.translate:hover {
				transform: translate(50px);
			}
			.translate2:hover {
				transform: translate(50px, 100px);
			}
			.translate3:hover {
				transform: translate(50%);
			}
			.translateX:hover {
				transform: translateX(50px);
			}
			.translateY:hover {
				transform: translateY(50px);
			}
			.translateZ:hover {
				transform: translateZ(50px);
			}
			.translate3d:hover {
				/* transform: translateX(50px) translateY(100px) translateZ(200px); */
				/* 简写 */
				transform: translate3d(50px, 100px, 200px);
			}
		</style>
	</head>
	<body>
		<div class="translate">translate(50px)</div>
		<div class="translate2">translate(50px, 100px)</div>
		<div class="translate3">translate(50%)</div>
		<div class="translateX">translateX(50px)</div>
		<div class="translateY">translateY(50px)</div>
		<div class="translateZ">translateZ(50px)</div>
		<div class="translate3d">3D位移</div>
	</body>
</html>

5. 基准点 transform-origin

  1. 在使用 transform 方法进行文字或图像的变形时,是以元素的中心点为基准点进行的 。 使用 transform-origin 属性,可以改变变形的基准点 。
  2. 用法: transform-origin: 10px 10px;
  3. 表示相对左上角原点的距离,单位 px,第一个参数表示相对左上角原点水平方向的距离,第二个参数表示相对左上角原点垂直方向的距离;
  4. 两个参数除了可以设置为具体的像素值,其中第一个参数可以指定为 left、center、right,第二个参数可以指定为 top、center、bottom。

6. 多方法组合变形

 transform: rotate(45deg) scale(0.5) skew(30deg, 30deg) translate(100px, 100px);

这四种变形方法顺序可以随意, 但不同的顺序导致变形结果不同, 原因是变形的顺序是从左到右依次进行。

三、 animation 关键帧动画

1. 在 CSS3 中创建动画, 您需要学习 @keyframes 规则 。
   2. @keyframes 规则用于创建动画 。 在 @keyframes 中规定某项 CSS 样式, 就能创建由当前样式逐渐改为新样式的动画效果 。
   3. 必须定义动画的名称和时长 。 如果忽略时长, 则动画不会允许, 因为默认值是 0。
   4. 请用百分比来规定变化发生的时间, 或用关键词 “from” 和 “to”, 等同于 0% 和 100% 。

5. 语法
      1. animation: name duration timing-function delay iteration-count direction;
      1. animation-name 规定需要绑定到选择器的 keyframe 名称
      2. animation-duration 规定动画完成一个周期所花费的秒或毫秒。默认是 0。
      3. animation-timing-function 规定动画的速度曲线。 默认是 “ease”。
      4. animation-delay 规定动画何时开始 。 默认是 0。
      5. animation-iteration-count 规定动画被播放的次数 。 默认是 1。
      6. animation-direction 规定动画是否在下一周期逆向地播放 。 默认是 “normal”; alternate (轮流),。

  1. alternate (轮流): 动画播放在第偶数次向前播放, 第奇数次向反方向播放 (animation-iteration-count 取值大于1时设置有效
       2. 语法: animation-direction: alternate;

  2. animation-play-state 规定动画是否正在运行或暂停 。 默认是 “running” 播放; paused 暂停播放 。
       1. 语法: animation-play-state: paused;

  3. animation-fill-mode 属性规定动画在播放之前或之后, 其动画效果是否可见; 规定对象动画时间之外的状态; none | forwards | backwards | both 。
       1. none: 不改变默认行为 (默认, 回到动画没开始时的状态) 。
       2. forwards: 当动画完成后,保持最后一个属性值(在最后一个关键帧中定义) (动画结束后动画停留在结束状态) 。
       3. backwards: 在 animation-delay 所指定的一段时间内, 在动画显示之前, 应用开始属性值 (在第一个关键帧中定义) (动画回到第一帧的状态)。
       4. both: 向前和向后填充模式都被应用 (根据 animation-direction 轮流应用 forwards 和 backwords 规则)。
       5. 语法: animation-fill-mode: forwards
          1. 0% 是动画的开始, 100% 是动画的完成。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>transition过渡/transform变形/animation关键帧动画</title>
</head>
<style>
  .w_publuc-style {
    margin-bottom: 30px;
    border: 3px solid #ccc;
  }
  /* transition 过渡 */
  .w_transition {
    width: 200px;
    height: 200px;
    background-color: wheat;
    color: #333;

    transition: background 0.8s ease-in 0.3s, width 0.8s ease-in 0.3s, color 0.6s ease-out 0.3s;
    -moz-transition: background 0.8s ease-in 0.3s, width 0.8s ease-in 0.3s, color 0.6s ease-out 0.3s; /* Firefox 4 */
    -webkit-transition: background 0.8s ease-in 0.3s, width 0.8s ease-in 0.3s, color 0.6s ease-out 0.3s; /* Safari and Chrome */
    -o-transition: background 0.8s ease-in 0.3s, width 0.8s ease-in 0.3s, color 0.6s ease-out 0.3s; /* Opera */
  }
  .w_transition:hover {
    background: yellow;
    width: 300px;
    color: blueviolet;
  }
  /* transform 变形 */
  .w_transform {
    margin:30px;
    width:200px;
    height:100px;
    background-color:yellow;

    /* Rotate div */
    transform:rotate(9deg);
    -ms-transform:rotate(9deg); /* Internet Explorer */
    -moz-transform:rotate(9deg); /* Firefox */
    -webkit-transform:rotate(9deg); /* Safari 和 Chrome */
    -o-transform:rotate(9deg); /* Opera */
  }

  /* animation 关键帧动画 */
  .w_animation {
    width: 200px;
    height: 200px;
    background: red;
    animation: myfirst 2s ease 0.5s infinite alternate;

    /* Firefox */
    -moz-animation:myfirst 2s ease 0.5s infinite alternate;
    /* Safari and Chrome */
    -webkit-animation:myfirst 2s ease 0.5s infinite alternate;
    /* Opera */
    -o-animation:myfirst 2s ease 0.5s infinite alternate;
  }
  @keyframes myfirst {
    from {background:red;}
    to {background:yellow;}
  }
  /* Firefox */
  @-moz-keyframes myfirst {
    from {background:red;}
    to {background:yellow;}
  }
  /* Safari and Chrome */
  @-webkit-keyframes myfirst {
    from {background:red;}
    to {background:yellow;}
  }
  /* Opera */
  @-o-keyframes myfirst {
    from {background:red;}
    to {background:yellow;}
  }
</style>
<body>
  <div class="w_transition w_publuc-style">transition 过渡</div>
  <div class="w_transform w_publuc-style">transform 变形</div>
  <div class="w_animation w_publuc-style">animation 关键帧动画</div>
</body>
</html>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【css】css动画实现的3种方式 的相关文章

  • 如何保留用户的输入打印?

    我正在尝试添加用户的评论 所以我只是尝试读取输入并将其发送以进行打印 但问题是 一旦我刷新页面或输入另一个输入 打印的输入就会消失 因此 即使刷新页面或重新输入新评论 我也希望始终保持所有用户的显示 代码 div div
  • save_and_open_page 已停止提供我的 CSS

    我的测试设置工作得很好 每当我打电话时 都能提供正确格式的 css 页面save and open page从测试中 然后 我设置了一些 javascript 测试 并对我的设置进行了一些更改 抱歉 我无法详细说明所有内容 我没有足够详细地
  • 网站在 iPhone 屏幕右侧显示空白区域

    我遇到问题http eiglaw com http eiglaw com iPhone 屏幕右侧显示约 25 像素宽的空白 边框 我在 stackoverflow 上研究了这个问题 这些帖子是相关的 但是当我尝试提供的各种解决方案时 我无法
  • div 中的中心文本?

    我有一个div 30px高和500px宽的 这div可以包含两行文本 一行在一行 并相应地设置样式 填充 但有时它只包含一行 我希望它居中 这可能吗 要水平居中 请使用text align center 要垂直居中 只能使用vertical
  • Bootstrap:如何将按钮组对齐在中心(垂直)

    在下面的代码中
  • CSS 继承、别名和其他很酷的东西

    有一天 我随机浏览网页 发现了一些程序 可以让你编写 CSS 别名和其他很酷的东西 我现在不记得了 举个例子 我记得你可以这样做 myclass background color red greenfont 其中 greenfont 在其他
  • javascript 选择自定义光标 (svg)

    我正在动态地将光标更改为悬停时的本地 svg element on mouseover function this css cursor url svgs pointer svg 9 30 auto 工作正常 但我想选择该 svg 来操纵其
  • 为什么我的交互式图像仅在 Internet Explorer 上出现故障?

    我的问题 我为自己制作了一个图像地图 交互式图像 它在 Chrome safari 和 Firefox 上完美运行 然而 当我在可怕的互联网浏览器上尝试它时 它真的很糟糕 这些小点应该扩展到更大的盒子中 在互联网浏览器上它要么不起作用 要么
  • css3按钮背景颜色无限过渡

    有没有办法仅使用 css3 使按钮的背景颜色从灰色渐变为蓝色 然后又回到灰色 一个很好的例子是默认操作按钮是可可 我知道这可以在 javascript 中完成 但我宁愿只使用 css 来完成此操作 您好 我已经通过 CSS3 动画制作了按钮
  • 如何检测一个或多个 JS/CSS 库加载失败(例如 CDN)?

    Premise 我找到了这两个答案 但我不明白如何将它系统地应用于许多库 检测并记录外部 JavaScript 或 CSS 资源加载失败的情况 https stackoverflow com questions 5683824 detect
  • 如何在 select2 下拉列表中换行?

    我正在使用 select 2 下拉菜单 然后在其内容中显示一些长句子 我想在句子的正确位置添加换行符 但下拉菜单是自动调整的 For example the content of the dropdown right now looks l
  • CSS:仅显示字符串的前两个字母

    是否可以使用纯 CSS 仅显示字符串的前两个字母 到目前为止我已经尝试过 没有成功 first letter 仅针对第一个字母 无论如何对我不起作用 nth of everything 需要额外的 javascript 文本溢出 省略号 正
  • Safari 中的 css3 边框半径动画过渡不起作用

    尝试在 Safari 中对图像的边框半径进行 css3 轻松过渡 它只是有点闪烁进入悬停状态 而不是平滑过渡 任何帮助深表感谢 我的代码如下 CSS all a hover img webkit border radius 50 moz b
  • 响应式图像 - srcset 和尺寸属性 - 如何正确使用两者:基于设备像素比和基于视口的选择一起?

    到目前为止 我经常读到这个问题 并且它也发生在我自己的项目中 这里介绍一下我到目前为止所发现的关于 srcset 和 size 属性的内容 关于如何使用有两种不同的可能性srcset 属性 来源 w3c http w3c github io
  • Angular - CSS - 自定义类型=文件输入,如何使用按钮而不是标签?

    我制作了一个类型为 file 的自定义输入字段 因为我不喜欢默认的输入字段 为了实现这一目标 我做了
  • CSS3 信封形状

    正如您可能已经猜到的 该图像是邮件信封形状的一部分 如果可能的话 我想使用 CSS3 创建该形状 我已经制作了其他部分 但这个很棘手 该形状需要两侧都有三角形切口和圆角 大概是 border radius bottom left borde
  • 在移动设备上滚动

    这个问题更多的是一个建议研究 我确实希望它对其他人有帮助 并且它不会关闭 因为我不太确定在哪里寻求有关此事的建议 在过去的 6 个月里 我一直在进行移动开发 我有机会处理各种设备上的各种情况和错误 最麻烦的是滚动问题 当涉及到在网站的多个区
  • 使用css bootstrap时如何仅向一列添加右边框?

    我正在尝试使用CSS引导框架 http getbootstrap com css tables在我的项目中 我正在使用带有以下类的表table table bordered table striped 我想删除除第一列之外的所有列的边框 这
  • 表格行未扩展到全宽

    我有一个表格 当我将表格的宽度设置为 100 并将表格行的宽度设置为 100 时 没有任何反应或宽度发生变化 Table Normal position relative display block margin 10px auto pad
  • 在 Nexus 7 2013 上更改方向时 CSS 媒体查询不起作用

    我目前正在我的笔记本电脑 台式电脑和 Nexus 7 2013 上测试 CSS 媒体查询 除了 Nexus 7 之外 它们在台式机和笔记本电脑上都运行良好 当我更改方向时 除非刷新页面 否则样式不会应用 例如 以纵向模式握住设备时 页面正常

随机推荐

  • Arduino无人机四轴飞行器(esp8266)

    想要更多项目私wo 一 电路设计 硬件组成 Arduini Nan ESP8266 MPU6050 模块 有刷电机 螺旋桨 电池包 Si2302场效应管 无人机架 ESP8266模块 为了与无人机通信 我们需要蓝牙或WIFI连接 所以我们使
  • linux下Zlib的安装与使用

    1 zlib简介 zlib 适用于数据压缩的函式库 由Jean loup Gailly 负责compression 和 Mark Adler 负责decompression 开发 zlib被设计成一个免费的 通用的 法律上不受阻碍 即没有被
  • ARM编译Qt程序报错pinyin.cpp:1: error: stray ‘\357‘ in program

    ARM编译Qt程序报错pinyin cpp 1 error stray 357 in program 问题 Qt程序用gcc编译可以通过 用arm linux gcc编译文件的时候出现异常错误 pinyin cpp 1 error stra
  • 西瓜书学习笔记day2

    模型评估与选择 一 经验误差与过拟合 错误率 分类错误的样本数占样本总数的比例 在m个样本中共有a个样本分类错误 则错误率E a m 精度 1 a m 误差 学习器实际预测输入与样本的真实输出之间的差异定义为误差 在训练集中的误差被称为训练
  • 简单写一个随机在一个三维区域生成球的matlab函数

    1条消息 使用MATLAB在给定矩形区域随机绘制任意个不相交的圆 风一样的航哥的博客 CSDN博客 以上博客自从发表以来好几个同学都问我 三维的怎么实现 今天下班之后 就写一个 不知道是不是其他同学需要的 先上代码 function plo
  • Qt学习: QCloseEvent关闭事件的使用及代码示例

    QCloseEvent事件是指 当你鼠标点击窗口右上角的关闭按钮时 所触发的函数 如果你没有重写virtual closeEvent QCloseEvent event 这个虚函数的话 系统是默认接受关闭事件的 所以就会关闭窗体 但有的时候
  • ImportError: libcudart.so.10.0:cannot open shared object file: No such file or direct【mmdetection错误】

    问题 在使用mmdetection做训练的时候 出现错误 gt gt gt from mmdet apis import init detector Traceback most recent call last return bootst
  • 【IDEA】idea设置默认maven配置, 避免每次设置maven

    环境 IDEA 2018 2021 场景 每次导入新项目是 经常需要重新设置maven 非常麻烦 方案 idea设置默认maven配置 避免每次设置maven 方法 Step 1 打开Settings File gt Other Setti
  • cartographer 参数理解

    参考文章 cartographer参数调整 xjEzekiel 博客园 cartographer探秘第一章之安装编译与参数配置 李太白lx的博客 CSDN博客 cartographer 涉及到的参数需要增加删除或者修改尽量在velodyne
  • mysql connector net 5.0_mysql 数据库和net 的版本动态库搭配问题

    Connector NET 1 0 includes support for MySQL Server 4 0 4 1 and 5 0 features and full compatibility with the ADO NET dri
  • python实现弹球小游戏

    跟着趣味开发python一起实现的弹球小游戏 游戏运行效果 实现流程 1 创建游戏画布 创建ball类 2 增加几个动作 让小球移动 让小球来回反弹 改变小球的起始方向 3 加上球拍 使球拍左右移动 循环移动 4 增加输赢因素 对小球位置进
  • 运动补偿 & 运动估计

    运动补偿是一种描述相邻帧 相邻在这里表示在编码关系上相邻 在播放顺序上两帧未必相邻 差别的方法 具体来说是描述前面一帧 相邻在这里表示在编码关系上的前面 在播放顺序上未必在当前帧前面 的每个小块怎样移动到当前帧中的某个位置去 这种方法经常被
  • Effective Modern C++ Item 20 对于类似std::shared_ptr但有可能悬空的指针,使用std::weak_ptr

    如果需要某种智能指针能够像std shared ptr一样方便 但又无需参与管理所指涉到的对象的共享所有权的话 就很好适合用std weak ptr 但这样的功能同样会带来一个问题 这种指针需要处理一个对std shared ptr而言不是
  • softmax分类器_Softmax 理解

    Softmax深入理解 译 AIUAI www aiuai cn Pytorch的交叉熵nn CrossEntropyLoss在训练阶段 里面是内置了softmax操作的 因此只需要喂入原始的数据结果即可 不需要在之前再添加softmax层
  • OpenWrt-SDK-编译生成ipk软件包

    版本 Barrier Breaker 类型 brcm2708 下载SDK http downloads openwrt org barrier breaker 14 07 brcm2708 generic OpenWrt SDK brcm2
  • linux部署vue项目

    命令行进入配置文件 vi usr local nginx conf nginx conf 输入i进行修改端口号和文件路径 按ESC保存后输入 wq退出 进入sbin启动nginx cd usr local nginx sbin nginx
  • FMC164-基于JESD204B的4路1Gsps AD 4路1.25Gsps DA FMC子卡

    板卡介绍 FMC164子卡集成4通道1Gsps采样率 16位AD 4通道1 25Gsps 16位DA 板载时钟芯片HMC7044 可以提供JESD204B所需要的各种时钟 具有同步 触发功能 模拟信号采用SSMC射频连接器输入和输出 板卡可
  • es 修改mappings字段结构

    es不支持直接修改mappings字段结构 可以通过 reindex 重建索引 方式修改 POST reindex source index old index dest index new index op type create Ela
  • 记录:Qt Creator 10配置安卓开发环境

    Qt Creator 现在的安卓开发环境配置相比老版本方便了不少 本文以目前在线安装版的 Qt Creator 10 0 2 Qt 5 15 Qt 6 5 为例做演示 有些文件可能会因为网络问题需要科学上网才能下载 1 下载 JDK htt
  • 【css】css动画实现的3种方式

    css实现动画主要有3种方式 transition实现过渡动画 transform转变动画 animation实现自定义动画 一 transition过渡动画 1 语法 transition property duration timing