请老师帮忙解答

请老师帮忙解答

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>transition case</title>

<style>

*{

padding: 0;

margin: 0;

}

div{

margin: 300px auto;

width: 500px;

height: 150px;

background-color: #abcdef;

text-align: center;

line-height: 150px;

font-size: 40px;

transform: scale(1) rotate(0deg);

transition-property: all;

transition-duration: 1s;

transition-timing-function: ease-in-out;

transition-delay: 0s;

}

div:hover{

transform: scale(2) rotate(360deg);

transition-property: all;

transition-duration: 1s;

transition-timing-function: ease-in-out;

transition-delay: 0s;

transition: transform 1s ease-in-out 0;

}

</style>

</head>

<body>

<div>www.imooc.com</div>

</body>

</html>

1.老师我不太懂为什么要在原来的div上面设置transition才可以实现鼠标移走div过渡回原来的样子?

2.为什么我不能设置transition简写?http://img1.sycdn.imooc.com//climg/5cdc30a40001cbab04730538.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
好帮手慕星星 2019-05-17 11:30:17

你好,同学的意思是这样写不行是吗?

http://img1.sycdn.imooc.com//climg/5cde2a9e0001278004720170.jpg

是因为后面延迟时间不能直接写0 ,需要添加上s,变成0s就可以了。

可以再试一下。

好帮手慕星星 2019-05-17 10:07:16

你好,同学的意思这样写吗?

http://img1.sycdn.imooc.com//climg/5cde16e80001abfc04950086.jpg

这样看到的是放大的效果,旋转效果其实也是有的,因为0deg和360deg状态是一样的,加上没有执行时间,所以看不到旋转的效果,可以把360deg改成90deg试试,效果就有了。

如果想要有一个过程的话,需要添加上时间,如下:

http://img1.sycdn.imooc.com//climg/5cde174d00010f8205140087.jpg

可以重新测试下,祝学习愉快!

  • 提问者 qq_慕尼黑1376657 #1
    老师,我的意思是这样的,因为transition:property duration timing-function delay;我在property的位置写transform,然后打开网页发现不行.
    2019-05-17 10:33:13
好帮手慕夭夭 2019-05-16 12:57:33

你好同学,解答如下:

  1. 因为hover是鼠标移入时才会设置样式,当鼠标离开的时候,hover中的样式就失效了。就不会有过渡效果。所以要把过渡放在div默认的样式里面哦。

  2. 简写形式是可以的,参考如下设置

    http://img1.sycdn.imooc.com//climg/5cdcedb500010c4e07260815.jpg
    祝学习愉快 ,望采纳。

  • 提问者 qq_慕尼黑1376657 #1
    老师,transition的简写形式不是transition: property duration timing-function delay;吗?为什么我直接写属性名/元素名不可以呢?
    2019-05-16 20:54:06
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师