发布网友 发布时间:2022-04-28 13:40
共2个回答
懂视网 时间:2022-04-28 18:01
CSS中的transition属性可用于调整元素更改的时间,它可以像动画一样显示。虽然transition属性可以很方便的实现过渡效果,但是有时候可能会出现无效的情况,所以我们就需要来理解transition属性的写法规则。我们先来看一下CSS中transition属性不起作用的原因
transition是一种允许您指定更改时间等的属性。
当用于设置鼠标光标放在按钮上时颜色和大小更改的时间时,它可以有像动画一样的效果。
transition格式如下
选择器名称{ transition-property:value; }
可指定的值是:
all:您可以指定适用于转换的所有属性。
none:没有属性发生变化。
属性名称:指定要应用转换的属性名称。可以通过逗号指定多个。
transition不起作用的许多原因通常是描述悬停事件的转换,所以要多加注意
因为可以实现动画运动,所以有些效果使用transition属性很容易实现。
下面我们来看看transition属性的具体用法
如上述所说,不要在悬停事件中使用transition属性。
HTML
<p>文字内容</p> <p>文字内容</p> <p>文字内容</p> <p>文字内容</p> <p>文字内容</p> <p>文字内容</p>
CSS
p { width:100px; background-color:red; transition-duration: 2s; transition-property:width; } p:hover { width:420px; background-color:blue; }
当鼠标没有放在上面的时候,浏览器上显示效果如下
当鼠标放到红色背景上面的时候,浏览器上显示效果如下:
p标签中指定了width : 100px和background-color:red;这样的话当宽度是100px时,背景是红色。下面指定了transition-duration: 2s;
这样的话,transtion实现的效果从开始到结束的时间是2秒。
最后是transition-property:width;应用transition属性的效果仅为width。
:hover中指定width : 420px和background - color:blue,这样,移动鼠标到上面的时候,宽度变为420px,背景变为蓝色。
如果鼠标悬停,宽度将为420px,背景将为蓝色,但过渡效果仅为宽度。2秒的变化只有宽度。由于转换效果不适用于指定背景颜色,因此只要将鼠标悬停在上面,它就会变为蓝色。
热心网友 时间:2022-04-28 15:09
兼容性问题。你可能需要同时添加以下属性:-webkit-transition(360安全浏览器需要此)、-moz-transition、-o-transition,用法和值和transition相同。注意webkit、moz、o前面的连字符(-)不要丢掉。以后遇到animation、transform等属性问题也可以采用此方法。