笔记 02 CSS 8种让人眼前一亮的hover效果 霓虹效果

参考原文
MDN box-shadow
参考 box-shadow

霓虹效果

css hover 触发 box-shadow

<!DOCTYPE html>
<html lang="zh">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>霓虹效果</title>
</head>
<style>
#neon-btn {
  display: flex;
  align-items: center;
  /* CSS justify-content 属性定义了浏览器之间,
  如何分配顺着弹性容器主轴(或者网格行轴) 的元素之间及其周围的空间。 */
  /* space-around 均匀排列每个元素每个元素周围分配相同的空间 */
  justify-content: space-around;
  height: 100vh;
  background: #031628;
}

.btn {
  border: 1px solid;
  background-color: transparent;
  text-transform: uppercase;
  font-size: 14px;
  padding: 10px 20px;
  font-weight: 300;
}

.one {
  color: #4cc9f0;
}

.two {
  color: #f038ff;
}

.three {
  color: #b9e769;
}

.btn:hover {
  color: white;
  border: 0;
}
/*
  CSS box-shadow 属性用于在元素的框架上添加阴影效果。
  你可以在同一个元素上设置多个阴影效果,并用逗号将他们分隔开。
  该属性可设置的值包括阴影的X轴偏移量、Y轴偏移量、模糊半径、扩散半径和颜色。
 */
.one:hover {
  background-color: #4cc9f0;
  /* x偏移量 | y偏移量 | 阴影模糊半径 | 阴影扩散半径 | 阴影颜色 */
  /* blur-radius (阴影模糊半径)
     一般情况下,阴影是纯色的,没有渐变区域。
     但是如果设置了模糊半径,就会创建一个渐变区域,向周围的颜色过渡。
     渐变半径必须大于0。 */
  /* spread-radius (阴影扩散半径)
    扩散半径是对原来的纯色阴影的缩放。
    默认取值为0,代表阴影和物体一样大,
    但因为阴影在物体后面,所以你看不见。
    当然加上一层模糊半径你就能看到了。
    小于0的时候,阴影会缩小。
    这种情况下往往你也看不到,
    需要设置一层很厚的模糊半径,
    然后慢慢调低扩散半径你才能看出区别。
    大于0的时候,阴影会扩大。
  */
  -webkit-box-shadow: 10px 10px 99px 6px rgba(76,201,240,1);
  -moz-box-shadow: 10px 10px 99px 6px rgba(76,201,240,1);
  box-shadow: 10px 10px 99px 6px rgba(76,201,240,1);
}

.two:hover {
  background-color: #f038ff;
  -webkit-box-shadow: 10px 10px 99px 6px rgba(240, 56, 255, 1);
  -moz-box-shadow: 10px 10px 99px 6px rgba(240, 56, 255, 1);
  box-shadow: 10px 10px 99px 6px rgba(240, 56, 255, 1);
}

.three:hover {
  background-color: #b9e769;
  -webkit-box-shadow: 10px 10px 99px 6px rgba(185, 231, 105, 1);
  -moz-box-shadow: 10px 10px 99px 6px rgba(185, 231, 105, 1);
  box-shadow: 10px 10px 99px 6px rgba(185, 231, 105, 1);
}
</style>
<body>
  <div id="neon-btn">
    <button class="btn one">Hover me</button>
    <button  class="btn two">Hover me</button>
    <button  class="btn three">Hover me</button>
  </div>
</body>
</html>