更新时间:2022-10-19 13:30:42
为了向上滑动背景颜色,您需要使用背景图片或某种渐变,同时逐渐调整 background-position
:
.box {
width:200px; height:100px;
background-size:100%200%;
background-image:linear-gradient(to bottom,red 50%,black 50%);
transition:background-position 1s;
}
.box:hover {
background-position:0 -100%;
}
您可以在这里看到这个演示:http://jsfiddle.net/as5ZU/
I am trying to change the background colour of a element on hover by using CSS transitions. I want to do this by having it scroll up from the bottom. I can fade the background in using this, but I would like it to slide up:
-webkit-transition: background-color 0.5s linear;
-moz-transition: background-color 0.5s linear;
-o-transition: background-color 0.5s linear;
transition: background-color 0.5s linear;
Sorry I'm not very good at CSS.
One other thought, would it be better to scroll up a separate element with the background applied to it.
Thanks for any help
In order to slide the background color up you would need to use a background image, or a gradient of some sort, while gradually adjusting the background-position
:
.box {
width: 200px; height: 100px;
background-size: 100% 200%;
background-image: linear-gradient(to bottom, red 50%, black 50%);
transition: background-position 1s;
}
.box:hover {
background-position: 0 -100%;
}
You can see this demo here: http://jsfiddle.net/as5ZU/