Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使元素的颜色在“悬停”上更暗?_Javascript_Jquery_Html_Css_Colors - Fatal编程技术网

Javascript 如何使元素的颜色在“悬停”上更暗?

Javascript 如何使元素的颜色在“悬停”上更暗?,javascript,jquery,html,css,colors,Javascript,Jquery,Html,Css,Colors,我的网页中有多个元素。例如,多个按钮(具有红色背景色)、链接(具有蓝色背景色)等 我需要在:hover上更改它们的颜色。目前我是这样做的: 按钮{ 背景色:红色; } 按钮:悬停{ 背景色:#c80020; } a{ 颜色:蓝色; } a:悬停{ 颜色:#082767; 光标:指针; } 按钮 link如果您使用SASS,您可以使用变暗方法来实现相同的效果 SASS位于下方 button{ background-color: red; } button:hover { backgr

我的网页中有多个元素。例如,多个按钮(具有红色背景色)、链接(具有蓝色背景色)等

我需要在
:hover
上更改它们的颜色。目前我是这样做的:

按钮{
背景色:红色;
}
按钮:悬停{
背景色:#c80020;
}
a{
颜色:蓝色;
}
a:悬停{
颜色:#082767;
光标:指针;
}
按钮

link
如果您使用SASS,您可以使用
变暗
方法来实现相同的效果

SASS位于下方

button{
  background-color: red;
}

button:hover {
   background-color: darken(red, 10%);
}
CSS整洁方式如下(CSS3)

在纯CSS方式中,我建议使用HSLA(色调饱和度亮度和alpha),这是一个CSS3特性,您可以查看。对你来说应该是这样的

button{
 background-color: hsla(0, 100%, 50%, 1);
}

button:hover {
  background-color: hsla(0, 100%, 38%, 1);
}
下面的CSS很难看(我相信没有人会读到这篇文章)

如果您想要更多的CSS方法来实现这一点,您可以在这里尝试的选项很少

其中包括

  • 添加长方体阴影并在悬停时将其删除
  • 添加1px半透明gif并在悬停时将其删除
  • 背景创建为psuedo元素&悬停时其不透明度更改

根据我的说法,这些更像是黑客&我不推荐,但选项是开放的:-)

如果您使用SASS,您可以使用
变暗
方法来实现同样的效果

SASS位于下方

button{
  background-color: red;
}

button:hover {
   background-color: darken(red, 10%);
}
CSS整洁方式如下(CSS3)

在纯CSS方式中,我建议使用HSLA(色调饱和度亮度和alpha),这是一个CSS3特性,您可以查看。对你来说应该是这样的

button{
 background-color: hsla(0, 100%, 50%, 1);
}

button:hover {
  background-color: hsla(0, 100%, 38%, 1);
}
下面的CSS很难看(我相信没有人会读到这篇文章)

如果您想要更多的CSS方法来实现这一点,您可以在这里尝试的选项很少

其中包括

  • 添加长方体阴影并在悬停时将其删除
  • 添加1px半透明gif并在悬停时将其删除
  • 背景创建为psuedo元素&悬停时其不透明度更改

根据我的说法,这些更像是黑客&我不推荐,但选项是开放的:-)

也许这就是你想要的:

html


也许这就是你想要的:

html


不,最好的办法是改变颜色,但你可以使用灰度(但我不推荐)

按钮{
背景色:红色;
}
按钮:悬停{
背景色:#c80020;
}
a{
颜色:蓝色;
}
a:悬停{-webkit过滤器:灰度(100%);
滤镜:灰度(100%);
光标:指针;
}
按钮

link
不,最好的办法是改变颜色,但你可以使用灰度(但我不推荐)

按钮{
背景色:红色;
}
按钮:悬停{
背景色:#c80020;
}
a{
颜色:蓝色;
}
a:悬停{-webkit过滤器:灰度(100%);
滤镜:灰度(100%);
光标:指针;
}
按钮

链接
您可以使用hsla而不是十六进制颜色

例如:

按钮{
背景色:hsla(356,98%,46%,1);
}
按钮:悬停{
背景色:hsla(356,98%,26%,1);
}

按钮
您可以使用hsla而不是十六进制颜色

例如:

按钮{
背景色:hsla(356,98%,46%,1);
}
按钮:悬停{
背景色:hsla(356,98%,26%,1);
}


按钮
使用一些动态语言,比如SCSS。我相信这已经很成功了。SAS和LESS具有
变暗()
变亮()
功能
a{color:#FC0;}a:hover{color:darken(#FC0,5%)
@MuhammadUsman就是为了这个?!@a.Wolff我在钱包CSS中看不到任何可能性。你知道吗?@MuhammadUsman我猜a.Wolff的意思是只使用SCSS来制作黑暗的东西是负担不起的。使用一些像SCSS这样的动态语言。我相信这一直是。SASS和更少的人都有
黑暗()
lighte()
函数。
a{color:#FC0;}a:hover{color:darken(#FC0,5%)
@MuhammadUsman仅仅是为了这个?!@A.Wolff我看不出钱包CSS有任何可能性。你知道吗?@MuhammadUsman我猜A.Wolff的意思是只使用SCS来制作黑暗的东西是负担不起的。这甚至改变了内容,而不仅仅是元素。@eisbehr这有点争议,因为答案是一个最小的例子。虽然不是一个很好的例子。这是甚至改变内容,而不仅仅是元素。@eisbehr这是一个有点争议的问题,因为答案只是一个很小的例子。虽然不是一个很好的例子。那么,没有什么丑陋的方法可以做到这一点,这不是我的建议。链接到我答案中更新的解释。更新的Thx虽然是,但它相当丑陋…)是的,我也更新了一个更好的CSS3方法->hs也为其他人计算了答案。因为完全相同的值和完全相同的格式,我很确定你从@AndreasBoyer复制了HSLA答案,你复制一个答案而不记下这一点很好。然后,很少有丑陋的方法来完成它,不是我推荐的。与我的答案中更新的解释链接。更新Thx虽然是,但它很难看…:)是,我也更新了一个更好的CSS3方法->hs也为其他人定义了答案。由于完全相同的值和完全相同的格式,我敢肯定你从@Andr复制了HSLA答案很高兴你能复制一个答案,而不是把它记下来。