html中如何让背景颜色渐变???

html中如何让背景颜色渐变???,第1张

1、打开html开发工具,新建一个html文件在html代码页面创建一个<div>并给这个标签添加一个类名linear:

2、然后为类设置样式。在title后面创建一个style标签,然后在这个标签里面设置linear类的高、渐变(linear-gradient)的样式,这里的第一个参数是设置渐变的方向,后面两个参数是起始颜色和终止颜色。设置好后去浏览器查看效果

3、保存好html文件后使用浏览器查看效果。就会看到一个绿色到红色的渐变了。以上就是html中让背景颜色渐变的设置方法介绍:

1、HTML实现渐变

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title></title>

<style>

#week{

width: 600px

height: 600px

background: linear-gradient(red, yellow, blue)

border-radius: 300px

}

</style>

</head>

<body>

<div id="week">

</div>

</body>

</html>

2、实现效果

background-image不支持CSS3 transition

background-image 不支持CSS3 transition ,而CSS3 gradient渐变作为背景图片存在的时候,下面的CSS设置是不会有过渡效果的。

.gradient {

background-image: linear-gradient(to right, olive, green)

transition: background-image 0.5s linear

}

.gradient:hover {

background-image: linear-gradient(to right, green, purple)

}

鼠标hover会发现渐变的变化是很唐突的,一点过渡效果也没有。

下面问题来了,如果我们希望实现渐变hover时候有过渡变化的效果,该如何实现呢?我这里罗列的几种可行的方法。

二、借助background-position实现渐变过渡

background-image 虽然不支持CSS3 transition 过渡,但是 background-position 支持啊,于是,通过控制背景位置,我们是可以实现渐变过渡效果的。

实现效果如下(鼠标hover):

相关代码如下:

.box {

max-width: 400px

height: 200px

background: linear-gradient(to right, olive, green, purple)

background-size: 200%

transition: background-position .5s

}

.box:hover {

background-position: 100% 0

}

三、借助background-color实现渐变过渡

background-image 虽然不支持CSS3 transition 过渡,但是 background-color 支持啊,于是,通过控制背景颜色,和一个颜色呈现技巧,我们也是可以实现渐变过渡效果的。

鼠标hover前后效果对比:

相关代码如下:

.box {

max-width: 400px

height: 200px

background: olive linear-gradient(to right, rgba(0,255,0,0), rgba(0,255,0,.5))

transition: background-color .5s

}

.box:hover {

background-color: purple

}

四、借助伪元素和opacity实现渐变过渡

借助伪元素创建变换后的渐变效果,通过改变覆盖的渐变的opacity透明度变化实现渐变过渡效果。

下图为hover之后的效果:

相关代码如下:

.box {

max-width: 400pxheight: 200px

background: linear-gradient(to right, olive, green)

position: relative

z-index: 0

}

.box::before {

content: ''

position: absolute

left: 0top: 0right: 0bottom: 0

background: linear-gradient(to right, green, purple)

opacity: 0

transition: opacity .5s

z-index: -1

}

.box:hover::before {

opacity: 1

}

五、结束语

以上就是我所知道的几个方法,当然,肯定还有其他更好的实现,欢迎补充。希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

html 图片的过渡效果

京东年货节特惠来袭!精华礼盒现购超值

京东

广告

《风尚坐火箭学习vue》-- 第十二章:Vue中的动画transition

174阅读·0评论·1点赞

2021年11月26日

image target behaviour 和image target的关系_CSS3中用background-image实现粒子动画效果

26阅读·0评论·0点赞

2020年11月20日

background-image的用法

13.8W阅读·2评论·33点赞

2016年9月9日

background-image 详解

1.0W阅读·1评论·7点赞

2014年11月17日

html文字图片过度效果,如何在图片上应用css3过渡属性?

510阅读·0评论·0点赞

2021年6月11日

HTML CSS 动画 实现图片过渡与变换(图片不超过边框范围局部放大)

1499阅读·1评论·4点赞

2021年11月25日

京东年货节,小年狂欢开启!酵素饮料现购超划算,速戳~

京东

广告

html 图片的过渡效果,3个CSS3图片过渡动画特效

1880阅读·0评论·1点赞

2021年6月11日


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7314902.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存