Files
blog/themes/butterfly/source/css/style.css
2025-08-13 20:54:27 +08:00

676 lines
19 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* #card-newest-comments img {border-radius: 10px; /* 设置最新评论圆角半径为10px可以根据需要调整} */
/* 说说轮播 */
#bber-talk {
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
/* 说说轮播 */
[data-theme=dark] #bber-talk {
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
/* 侧边栏个人信息卡片动态渐变色 */
#aside-content>.card-widget.card-info {
position: relative;
z-index: 1; /* 确保原内容在上层显示 */
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
#aside-content > .card-widget.card-info::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(to bottom,
rgba(255, 255, 255, 0.0),
rgba(255, 255, 255, 0.3),
rgba(255, 255, 255, 0.6),
rgba(255, 255, 255, 0.7)),
url('/config/img/dog.jpg'); /* 鼠标悬停时显示的背景图片 */
background-size: cover;
background-repeat: no-repeat;
opacity: 0.5;
transition: opacity 0.8s; /* 过渡效果持续时间 */
z-index: -1;
}
[data-theme=dark] #aside-content > .card-widget.card-info::before {
background: linear-gradient(to bottom,
rgba(24, 40, 72, .1),
rgba(35, 37, 58, .3),
rgba(35, 37, 58, .6),
rgba(24, 40, 72, .7)),
url('/config/img/dog.jpg'); /* 鼠标悬停时显示的背景图片 */
background-size: cover;
background-repeat: no-repeat;
}
#aside-content > .card-widget.card-info:hover::before {
opacity: 1;
}
/* 卡片动态效果,好好看哈哈 */
#aside-content div.card-widget.card-info .avatar-img {
transition: opacity 0.3s ease; /* 添加渐变效果 */
}
#aside-content div.card-widget.card-info .avatar-img:hover {
opacity: 0; /* 鼠标移上去时完全透明 */
}
#card-info-btn:hover, #card-info-btn:hover .icon, #card-info-btn:hover span {
transform: scale(1.1); /* 鼠标悬停时放大到110% */
}
[data-theme=dark] #aside-content>.card-widget.card-info {
background: linear-gradient(-45deg, rgba(24, 40, 72, .6),
rgba(35, 37, 58, .5),
rgba(35, 37, 58, .5),
rgba(24, 40, 72, .6));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
/* 侧边栏公告栏卡片渐变色 */
#aside-content>.card-widget.card-announcement {
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
[data-theme=dark] #aside-content>.card-widget.card-announcement {
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
/* 侧边栏目录最新文章卡片渐变色 */
#aside-content>.sticky_layout>.card-widget {
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
[data-theme=dark] #aside-content>.sticky_layout>.card-widget {
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
/* 侧边栏欢迎卡片渐变色 */
#aside-content>.card-widget.welcomeBoxClass {
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
[data-theme=dark] #aside-content>.card-widget.welcomeBoxClass {
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
/* 公告卡片渐变色 */
#recent-posts>#noticeList {
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
[data-theme=dark] #recent-posts>#noticeList {
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
/* 个人信息Follow me按钮 */
#aside-content>.card-widget.card-info>#card-info-btn {
background-color: #3eb8be;
border-radius: 10px;
}
/* 古诗词卡片 */
#card-poem{
display: flex;
flex-direction: column;
padding: 0.5rem!important;
min-height: 130px;
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7))!important;
backdrop-filter: blur(10px);
}
[data-theme=dark] #card-poem{
display: flex;
flex-direction: column;
padding: 0.5rem!important;
min-height: 130px;
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7))!important;
backdrop-filter: blur(10px);
}
/*文章页面*/
.layout>#post {
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
[data-theme=dark] .layout>#post {
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
/*主页文章预览页面*/
#recent-posts>.recent-post-items>.recent-post-item {
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7))!important;
backdrop-filter: blur(10px)!important;
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
[data-theme=dark] #recent-posts>.recent-post-items>.recent-post-item {
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7))!important;
backdrop-filter: blur(10px)!important;
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
/*分类页面*/
.layout>#page {
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px); 兼容性前缀,适用于一些旧版本的浏览器 */
}
[data-theme=dark] .layout>#page {
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px); 兼容性前缀,适用于一些旧版本的浏览器 */
}
/*时间轴页面*/
.layout>#archive {
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
[data-theme=dark] .layout>#archive {
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
/*分类点进去的页面*/
.layout>#category {
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
[data-theme=dark] .layout>#category {
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
/*标签点进去的页面*/
.layout>#tag {
background: linear-gradient(-45deg, rgba(255, 255, 255, .7),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .8),
rgba(255, 255, 255, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
[data-theme=dark] .layout>#tag {
background: linear-gradient(-45deg, rgba(24, 40, 72, .7),
rgba(35, 37, 58, .8),
rgba(35, 37, 58, .8),
rgba(24, 40, 72, .7));
backdrop-filter: blur(10px);
/* -webkit-backdrop-filter: blur(10px);兼容性前缀,适用于一些旧版本的浏览器 */
}
.layout.hide-aside {
max-width: 1200px;
}
/* 设置黑夜的时候,社交按钮为白色 */
[data-theme=dark] .social-icon i {
color: rgba(188, 188, 188) !important; /* 设置为白色 */
}
.layout{
width: 100%;
max-width:1400px;
}
/* 重新定义宽度 */
.layout > div:first-child {
width: 100%;
}
#post {
width: 78%;
}
.aside-content {
max-width: 100%;
min-width: 300px;
}
.layout.hide-aside {
max-width: 1400px;
}
/* 定义是否侧边栏的宽度 */
#recent-posts > .recent-post-item {
height: 19em;
border: var(--style-border);
}
#recent-posts > .recent-post-item >.recent-post-info {
padding: 0 56px;
width: 64%;
}
@media screen and (max-width: 768px) {
#recent-posts > .recent-post-item {
height: auto;
}
#recent-posts > .recent-post-item >.recent-post-info {
padding: 20px 20px 30px;
width: 100%;
text-align: center;
}
}
/* 主页文章列表图片宽度 */
.loading-img {
background: url(https://free.picui.cn/free/2025/08/10/689845496a283.png) no-repeat center center;
background-size: cover;
}
#nav-right{
flex:1 1 auto;
justify-content: flex-end;
margin-left: auto;
display: flex;
flex-wrap:nowrap;
}
/* 菜单栏居中 */
#blog-info a:hover {
background: var(--icat-blue);
transition: background .3s;
border-radius: 8px;
}
#blog-info a:hover .site-name {
color: var(--icat-blue) !important;
position: relative;
text-shadow: 0 0 transparent;
}
#blog-info a:hover .site-name:after {
position: absolute;
display: flex;
top: 0;
width: 100%;
height: 100%;
content: "\e03a";
font-family: "iconfont" !important;
font-size: 22px;
line-height: 1;
color: var(--icat-white);
justify-content: center;
align-items: center;
}
@media screen and (max-width: 768px) {
#blog-info a:hover {
background: 0;
transition: unset;
border-radius: 0;
}
#blog-info a:hover .site-name {
color: var(--icat-blue) !important;
position: relative;
text-shadow: 2px 2px 4px rgba(0,0,0,0.15);
}
#blog-info a:hover .site-name:after {
display: none;
}
}
/* 主页按钮 */
#nav.show {
display: flex;
justify-content: center;
}
#nav .site-page {
padding-bottom: 14px;
}
#page-header.not-top-img #nav {
display: flex;
justify-content: center;
border-bottom: 1px solid var(--icat-secondbg);
}
#nav-group {
width: 1400px;
display: flex;
align-items: center;
padding: 0 0.6rem;
margin-left: auto;
margin-right: auto;
}
/* 顶部栏宽度定义 */
#nav .menus_items .menus_item .menus_item_child, #nav .menus_items .icat_menus_item .menus_item_child {
margin-top: 14px;
border: 1px solid var(--icat-secondbg);
}
#nav .menus_items .menus_item .menus_item_child li a, #nav .menus_items .icat_menus_item .menus_item_child li a {
padding: 8px 34px;
text-align: center;
}
#travellings {
padding: 0 14px 0 0;
}
/* PC菜单栏美化 */
@supports not (selector(::-webkit-scrollbar)) {
html {
scrollbar-width: auto;
scrollbar-color: #bbb #bbb;
}
}
#sidebar #sidebar-menus .menus_items .menus_item_child {
display: -webkit-box;
display: -moz-box;
display: -webkit-flex;
display: -ms-flexbox;
display: box;
display: flex;
-webkit-box-orient: horizontal;
-moz-box-orient: horizontal;
-o-box-orient: horizontal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
-webkit-box-lines: multiple;
-moz-box-lines: multiple;
-o-box-lines: multiple;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
#sidebar #sidebar-menus .menus_items a.site-page, #sidebar .menus_item ul {
padding-left: 0;
}
#sidebar #sidebar-menus .menus_item_child li {
width: calc(50% - 8px);
margin: 4px;
}
#sidebar #sidebar-menus .menus_item_child .site-page.child {
display: -webkit-box;
display: -moz-box;
display: -webkit-flex;
display: -ms-flexbox;
display: box;
display: flex;
-webkit-box-orient: vertical;
-moz-box-orient: vertical;
-o-box-orient: vertical;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-align: center;
-moz-box-align: center;
-o-box-align: center;
-ms-flex-align: center;
-webkit-align-items: center;
align-items: center;
padding: 8px;
border-radius: 12px;
border: var(--style-border-always);
background: var(--icat-card-bg);
font-size: 14px;
}
#nav.hide-menu #toggle-menu {
padding: 0 0 0 12px;
}
#sidebar #sidebar-menus .icat_menus_item .site-page {
text-align: center;
margin: 4px;
display: -webkit-box;
display: -moz-box;
display: -webkit-flex;
display: -ms-flexbox;
display: box;
display: flex;
-webkit-box-orient: vertical;
-moz-box-orient: vertical;
-o-box-orient: vertical;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-align: center;
-moz-box-align: center;
-o-box-align: center;
-ms-flex-align: center;
-webkit-align-items: center;
align-items: center;
padding: 8px 0;
border-radius: 12px;
font-size: 14px;
}
@media screen and (max-width: 768px) {
#sidebar #sidebar-menus .menus_items .site-page.group > i:last-child {
margin-top: 4px;
}
#sidebar #sidebar-menus .menus_items .icat_menus_item .site-page i:first-child {
text-align: center;
padding-left: 0;
}
}
/* 子菜单美化 */
#sidebar .open > .avatar-img img {
height: 100px;
width: 100px;
border-radius: 50%;
}
#sidebar .open > .avatar-img img {
border: 5px #fff solid;
}
#sidebar .open > .avatar-img::before {
bottom: 8px;
height: 12px;
width: 12px;
}
#sidebar .open > .avatar-img::before {
content: '';
position: absolute;
left: 50%;
transform: translate(65%);
background: #6bdf8f;
border: 5px solid #fff;
border-radius: 50%;
transition: filter 375ms ease-in .2s,transform .3s;
z-index: 2;
}
/* 头像美化 */
#sidebar #sidebar-menus .sidebar-site-data {
padding: 0;
margin-left: 10px;
background: var(--icat-card-bg);
border-radius: 12px;
border: var(--style-border-always);
}
@media screen and (max-width: 768px) {
.site-data {
width: 94%;
}
}
/* 侧边栏的统计栏美化 */
/* ===========================================
极简版权卡片 参考图片重制
亮色 / 暗色 自动切换
=========================================== */
:root {
/* 亮色变量 */
--card-bg: #ffffff;
--card-border: #e5e7eb;
--text-primary: #111827;
--text-secondary: #6b7280;
--link-color: #2563eb;
--link-hover: #3b82f6;
}
[data-theme=dark]{
:root {
/* 暗色变量 */
--card-bg: #111827;
--card-border: #374151;
--text-primary: #f9fafb;
--text-secondary: #9ca3af;
--link-color: #60a5fa;
--link-hover: #93c5fd;
}
}
/* 强制暗色模式(加 .dark 到 <html> 或 <body> */
.dark {
--card-bg: #111827;
--card-border: #374151;
--text-primary: #f9fafb;
--text-secondary: #9ca3af;
--link-color: #60a5fa;
--link-hover: #93c5fd;
}
/* 版权卡片整体 */
.post-copyright {
margin: 2rem 0;
padding: 1.5rem 1.75rem;
background: var(--card-bg);
border: 1px solid var(--card-border);
border-radius: 8px;
font-size: 0.925rem;
line-height: 1.6;
color: var(--text-primary);
}
/* 标题(文章名) */
.post-copyright__title {
font-weight: 700;
font-size: 1.125rem;
margin-bottom: 0.75rem;
color: var(--text-primary);
}
/* 链接 */
.post-copyright__link {
color: var(--link-color);
text-decoration: none;
word-break: break-all;
}
.post-copyright__link:hover {
color: var(--link-hover);
text-decoration: underline;
}
/* 元数据行 */
.post-copyright__meta {
margin-top: 0.5rem;
color: var(--text-secondary);
}
.post-copyright__meta strong {
color: var(--text-primary);
font-weight: 600;
}
/* 移动端适配 */
@media (max-width: 600px) {
.post-copyright {
padding: 1.25rem;
font-size: 0.875rem;
}
}