惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

MyScale Blog
MyScale Blog
Apple Machine Learning Research
Apple Machine Learning Research
H
Help Net Security
雷峰网
雷峰网
V
Visual Studio Blog
G
Google Developers Blog
Microsoft Azure Blog
Microsoft Azure Blog
Hugging Face - Blog
Hugging Face - Blog
爱范儿
爱范儿
IT之家
IT之家
Engineering at Meta
Engineering at Meta
Microsoft Security Blog
Microsoft Security Blog
aimingoo的专栏
aimingoo的专栏
大猫的无限游戏
大猫的无限游戏
M
MIT News - Artificial intelligence
月光博客
月光博客
A
About on SuperTechFans
B
Blog RSS Feed
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
The GitHub Blog
The GitHub Blog
N
Netflix TechBlog - Medium
J
Java Code Geeks
云风的 BLOG
云风的 BLOG
Blog — PlanetScale
Blog — PlanetScale

新锐博客

vscode连接cnb并推送仓库 - 新锐博客 twikoo不用token查询文章浏览量 - 新锐博客 基于Astro构建的支持对话与生图的Web应用 - 新锐博客 deepseek-v4-flash-0731使用体验 - 新锐博客 基元律动免费送68元额度 - 新锐博客 Linux更换软件源 - 新锐博客 华为鸿蒙7.0花粉beta版发布 - 新锐博客 使用测速脚本测一下服务器带宽 - 新锐博客 trae告别白嫖时代,auto也需排队了 - 新锐博客 流量不够用?大流量卡免费领 - 新锐博客 推荐一个免费在线图片处理网站 - 新锐博客 AI清理C盘的优缺点 - 新锐博客 twikoo不算bug的bug - 新锐博客 最近网站的一些变动 - 新锐博客 腾讯EO开始发多余套餐啦!速领 - 新锐博客 hi168停止对个人用户的运营 - 新锐博客 哪吒监控曝高危漏洞,请尽快升级 - 新锐博客 IndexDB实现大文件下载的思路 - 新锐博客 鱼鱼api使用教程 - 新锐博客 服务器安装Dokploy替代vercel - 新锐博客 对于近几年的电视剧的无力吐槽 - 新锐博客 关于网站被攻击的后续 - 新锐博客 使用sessionStorage给音乐播放进度存储 - 新锐博客 修复了一些bug,网站基本上趋于稳定了 - 新锐博客 AI模型掺水?如何辨别真假? - 新锐博客 感谢一九云给我防住了攻击 - 新锐博客 对一些新手使用AI编程的建议 - 新锐博客 Edgeone标记过期和直接删除有何区别? - 新锐博客 用Navigation Timing API给博客添加上加载时间 - 新锐博客 使用 Astro 自建博客,从零开始鏖战 14 小时 - 新锐博客
Uptime-kuma美化 - 新锐博客
莫忘 · 2026-05-08 · via 新锐博客

前言

uptime-kuma最近升级了一下,导致之前的美化丢失了,这次找到了六神的美化方案。

所以打算直接用他的美化方案。

效果图:

Uptime-kuma美化

教程

直接将如下代码放到监控页面的自定义css中。

/* Uptime-kuma美化 */
/* 字体引入 */
@import url('https://cdn.xrbk.cn/fonts/LXGWWenKaiLite-Regular/result.css');


:root {
  --bs-white: #fff;
  --bs-dark: #212529;
  --bs-green: #008000;
  --bs-danger: #dc3545;
  --bs-body-bg: #f6f7f9;
  --bs-blue: #0d6efd;
  --bg-linear-gradient: linear-gradient(180deg, #f6f6f6, #f8f8f8);
  --border-solid-main: 2px solid var(--bs-white);
  --border-solid-small: 1px solid var(--bs-white);
  --shadow-box-main: 8px 8px 15px 0 rgba(55, 99, 170, 0.1), -8px -8px 15px 0 var(--bs-white), inset 0 4px 15px 0 rgba(255, 255, 255, 0.5);
  --shadow-box-small: 5px 5px 12px 0 rgba(55, 99, 170, 0.1), -5px -5px 12px 0 var(--bs-body-bg), inset 0 4px 10px 0 rgba(255, 255, 255, 0.5);
  --shadow-inset-box: inset -4px -4px 12px #f1f1f1, inset 4px 4px 12px #e2e2e2;
}

.dark {
  --bs-white: #2d2d2d;
  --bs-dark: #e9ecef;
  --bs-green: #00c800;
  --bs-danger: #dc3545;
  --bs-body-bg: #222222;
  --bg-linear-gradient: linear-gradient(180deg, #242424, #222222);
  --border-solid-main: 2px solid rgba(45, 45, 45, 0.8);
  --border-solid-small: 1px solid rgba(45, 45, 45, 0.6);
  --shadow-box-main: 8px 8px 15px 0 rgba(0, 0, 0, 0.3), -8px -8px 15px 0 #242424, inset 0 4px 15px 0 #222222;
  --shadow-box-small: 5px 5px 12px 0 rgba(0, 0, 0, 0.25), -5px -5px 12px 0 #242424, inset 0 4px 10px 0 #222222;
  --shadow-inset-box: inset -4px -4px 12px #0d0d0d, inset 4px 4px 12px #1a1a1a;
}

body {
  background-color: var(--bs-body-bg) !important;
}

#app {
  font-family: "LXGW WenKai Lite" !important;
}

/* LOGO标题样式 */
.title-flex {
  font-weight: bold;
  justify-content: center;
}

/* 按钮 */
.btn-info {
  color: var(--bs-dark);
  background-image: var(--bg-linear-gradient);
  box-shadow: var(--shadow-box-small);
  border: var(--border-solid-main);
}

.btn-info:hover {
  color: var(--bs-dark);
  background-color: transparent;
  border-color: unset;
  box-shadow: var(--shadow-inset-box);
}

/* 服务组标题 */
.group-title {
  font-size: 2.5rem;
  font-weight: 500;
  opacity: .6;
  -webkit-mask: linear-gradient(var(--bs-white) 50%, transparent);
  mask: linear-gradient(var(--bs-white) 50%, transparent);
  text-stroke: 1px var(--bs-dark);
  -webkit-text-stroke: 1px var(--bs-dark);
  -webkit-text-fill-color: transparent;
}

/* 服务项目列表样式 */
.monitor-list .monitor-list {
  min-height: 45px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.monitor-list .item .info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.info1::before,
.info1::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-color: var(--bs-white);
  margin: 0.5rem 0;
  border-radius: 50%;
  animation: breath 1.5s ease-in-out infinite;
}

.info1::after {
  animation-delay: 0.75s;
  /* 使两个圆点呼吸交替进行 */
}

.info .bg-danger+.item-name {
  color: var(--bs-red);
}

.shadow-box {
  margin-top: 0 !important;
  background-image: var(--bg-linear-gradient);
  border: var(--border-solid-main);
  box-shadow: var(--shadow-box-main);
}

div[data-v-f71ca08e].mb-5:hover .group-title {
  -webkit-text-fill-color: var(--bs-dark);
}

.monitor-list .item:hover {
  background-color: var(--bs-white);
  box-shadow: var(--shadow-inset-box);
}

.dark .monitor-list .item:hover {
  background-color: var(--bs-body-bg);
}

/* 服务项目列表标题样式 */
.item-name {
  font-weight: bold;
}

a {
  text-decoration: none !important;
}

a.item-name:hover {
  color: var(--bs-blue) !important;
}

/* 服务OK样式 */
.overall-status .ok {
  color: var(--bs-green) !important;
}

.hp-bar-big .beat[data-v-636dc6a9] {
  background-color: var(--bs-green);
}

.item .row {
  justify-content: space-between;
}

/* 状态百分比改为呼吸状态 */
.info .badge.rounded-pill.bg-primary {
  --bg: var(--bs-green);
}

.info .badge.rounded-pill.bg-danger {
  --bg: var(--bs-danger);
}

.info .badge.rounded-pill {
  position: relative;
  display: flex;
  min-width: auto;
  width: 1rem;
  margin-left: 0.1rem;
  font-size: 0;
  justify-content: center;
  align-items: center;
  background-color: transparent !important;
}

.info .badge.rounded-pill::before {
  position: absolute;
  content: "";
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background-color: var(--bg);
  animation: breath 1.1s ease-in-out infinite;
}

.info .badge.rounded-pill::after {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
  background-color: var(--bg);
}


@keyframes breath {

  0%,
  100% {
    transform: scale(1);
    opacity: 0.2;
  }

  50% {
    transform: scale(1.2);
    opacity: 0;
  }
}

/* 公共样式优化 */
.col-md-4 {
  width: 50%;
}

.col-md-8 {
  max-width: 50%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}

.mb-5 {
  margin-bottom: 2rem !important;
}

/* 底部样式 */
footer[data-v-b8247e57] {
  margin: 1.5rem 0 !important;
}

footer p {
  margin: 0 !important;
}

/* 适配手机 */
@media screen and (max-width: 768px) {
  .monitor-list .monitor-list {
    grid-template-columns: repeat(1, 1fr);
  }

  .group-title {
    font-size: 2rem;
  }
}

其中的字体改成了我自己的。

莫忘

君子喻以义,小人喻以利

本文是原创文章,采用 CC BY-NC-SA 4.0 协议,完整转载请注明来自 新锐博客