说明:以下提供的css是官方主题Bento修改而得,主要是调整了一些显示样式,将原来的双排显示改为单行,去掉了网站标题和导航上的数字标记,增加了网页字体随屏幕大小自适应,并增加了微博功能。

代码如下:

/* ========== 根变量 ========== */
:root {
    /* 颜色 */
    --color-dark: #231f29;
    --color-light: #f4f4f4;
    --color-light-2: #fff;
    --color-primary: #d10630;
    --color-border: #e0e0e0;
    /* 字体大小:使用 clamp 实现响应式 */
    --size-step-0: clamp(1rem, calc(0.96rem + 0.22vw), 1.13rem); /* 基础字号 */
    --size-step-1: clamp(1.25rem, calc(1.16rem + 0.43vw), 1.5rem);
    --size-step-2: clamp(1.56rem, calc(1.41rem + 0.76vw), 2rem);
    --size-step-3: clamp(1.95rem, calc(1.71rem + 1.24vw), 2.66rem); /* h1/h2 使用 */
    --size-step-4: clamp(2.44rem, calc(2.05rem + 1.93vw), 3.55rem);
    /* 间距、圆角、阴影、字体栈 */
    --spacing: clamp(1rem, 2vw, 2rem);
    --radius: 1rem;
    --shadow: 0 2px 2px rgba(0, 0, 0, 0.04);
    --font-stack: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    /* 代码块颜色 */
    --code-background-color: var(--color-dark);
    --code-color: var(--color-light);
}
/* ========== 暗色模式(跟随系统) ========== */
@media (prefers-color-scheme: dark) {
    :root {
        --color-dark: #f4f4f4;
        --color-light: #231f29;
        --color-light-2: #1e1a23;
        --color-primary: #d10630;
        --color-border: #25212c;
    }
}
/* ========== 全局基础样式 ========== */
body {
    background: var(--color-light);
    color: var(--color-dark);
    font-family: var(--font-stack);
    font-size: var(--size-step-0);
    line-height: 1.7;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--spacing);
    flex-wrap: wrap;
    min-height: 100vh;
    margin: 0;
    padding: var(--spacing);
}
* {
    box-sizing: border-box;
}
/* ========== 头部 ========== */
header {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) / 4);
    padding-right: 0;
    position: sticky;
    top: 0;
    max-height: 100vh;
    /* 修改:移除半透明渐变,使用纯色背景,并提高层叠顺序 */
    background-image: none;
    background-color: var(--color-light);
    z-index: 10;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05); /* 增加轻微阴影,强化与内容的视觉分隔 */
}
/* ========== 主体内容 ========== */
main {
    flex: 1;
    /* 新增:为main设置背景色和相对定位,确保内容在header下方正确遮挡 */
    background-color: var(--color-light);
    position: relative;
    z-index: 1;
}
/* 主内容区域内的块级元素(除某些特定元素外)添加边框和背景 */
main > *:not(script, form),
main .upvote-button {
    display: block;
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    padding: var(--spacing);
    background-color: var(--color-light-2);
    box-shadow: var(--shadow);
}
main .upvote-button {
    display: flex;
}
main > *:first-child {
    margin-top: 0;
}
/* 如果主内容包含博客文章列表,移除边框背景 */
content:has(.blog-posts) {
    border: none;
    padding: 0;
    background-color: transparent;
    box-shadow: none;
}
/* ========== 图片 ========== */
img {
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}
/* ========== 标题 ========== */
h1, h2, h3, h4, h5 {
    font-weight: 400;
    line-height: 1.3;
    text-wrap: balance;
}
h1 { font-size: var(--size-step-3); }
h2 { font-size: var(--size-step-3); }
h3 { font-size: var(--size-step-2); }
h4 { font-size: var(--size-step-1); }
h5 { font-size: var(--size-step-0); }
/* ========== 列表 ========== */
ul, ol {
    -webkit-padding-start: var(--spacing);
    padding-inline-start: var(--spacing);
}
li {
    --flow-space: var(--spacing);
    margin-block-start: var(--flow-space, var(--spacing));
}
/* ========== 引用块 ========== */
blockquote {
    -webkit-padding-start: var(--spacing);
    padding-inline-start: var(--spacing);
    -webkit-border-start: 0.3em solid;
    border-inline-start: 0.3em solid;
    font-style: italic;
    font-size: var(--size-step-1);
    max-width: 50ch;
}
/* ========== 链接 ========== */
a {
    color: var(--color-primary);
    text-decoration: none;
    font-weight: 400;
}
a:hover {
    text-decoration: underline;
    text-decoration-color: var(--color-border);
}
/* ========== 内容区域内的间距管理 ========== */
content > div > * {
    -webkit-margin-before: var(--flow-space, var(--spacing));
    margin-block-start: var(--flow-space, var(--spacing));
}
content > *:first-child {
    -webkit-margin-before: 0;
    margin-block-start: 0;
}
:is(h1, h2, h3, h4, h5, blockquote) {
    --flow-space: calc(var(--spacing) * 2);
    margin-block-end: calc(var(--spacing) / 2);
}
:is(h1, h2, h3, h4, h5) + * {
    --flow-space: calc(var(--spacing) / 3);
}
:is(h1, h2, h3, h4, h5) + :where(h2, h3, h4, h5) {
    --flow-space: calc(var(--spacing) * 2);
}
/* 标题最大宽度限制 */
h1 { max-width: 24ch; }
h2, h3 { max-width: 32ch; }
/* ========== 特殊类 .title(网站标题区域) ========== */
.title {
    padding: var(--spacing);
    display: flex;
    flex-direction: column;
    word-break: break-word;
    border-radius: var(--radius);
    border-top-left-radius: 0;
    text-decoration: none;
    color: var(--color-light-2);
    background-color: var(--color-primary);
    box-shadow: var(--shadow);
    font-weight: 400;
    max-width: 340px;
}
.title::before {
    content: "";
    font-size: 60%;
}
.title h1 {
    font-size: var(--size-step-2);
    margin: 0;
}
.title:hover {
    text-decoration: none;
}
/* ========== 导航 ========== */
nav p {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--spacing) / 6);
    counter-reset: nav-counter;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
nav p a {
    display: flex;
    word-break: break-all;
    text-decoration: none;
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    gap: calc(var(--spacing) / 8);
    padding: 0.35rem 0.7rem;
    background-color: var(--color-light-2);
    color: var(--color-dark);
    font-weight: 600;
    box-shadow: var(--shadow);
    transition: color 0.2s ease-in-out;
    white-space: nowrap;
    flex-shrink: 0;
}
nav p a::before {
    counter-increment: nav-counter;
    content: "";
    font-size: 60%;
    font-weight: 400;
    color: var(--color-primary);
}
nav p a:hover {
    text-decoration: none;
    color: var(--color-primary);
}
/* ========== 代码高亮 ========== */
.highlight,
.code {
    padding: 1px var(--spacing);
    background-color: var(--code-background-color);
    color: var(--code-color);
    border-radius: var(--radius);
    overflow-x: auto;
    line-height: 1.3;
    box-shadow: var(--shadow);
}
/* ========== 表格 ========== */
table {
    width: 100%;
}
th {
    text-align: left;
}
/* ========== 页脚 ========== */
footer {
    padding: calc(var(--spacing) / 1.1) 0 !important;
    font-size: 60%;
    font-weight: 400;
    font-style: normal;
    color: var(--color-primary);
    text-transform: uppercase;
}
/* ========== 博客文章列表 ========== */
.blog-posts {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--spacing) / 4);
}
.blog-posts li {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: calc(var(--spacing) / 2);
    word-break: break-word;
    text-decoration: none;
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    padding: calc(var(--spacing) / 1.5) var(--spacing);
    background-color: var(--color-light-2);
    color: var(--color-dark);
    font-weight: 400;
    box-shadow: var(--shadow);
    margin: 0;
    width: 100%;
}
.blog-posts li time {
    font-size: 100%;
    font-weight: 400;
    font-style: normal;
    color: var(--color-primary);
    white-space: nowrap;
    flex-shrink: 0;
    padding-top: 0;
    line-height: 1.5;
}
.blog-posts li a {
    text-decoration: none;
    color: var(--color-dark);
    line-height: 1.5;
    transition: color 0.2s ease-in-out;
    font-size: var(--size-step-0.9);
    flex: 1;
    min-width: 0;
    position: relative;
    z-index: 1;
}
/* 标题遮罩伪元素(半透明主色覆盖) */
.blog-posts li a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(209, 6, 48, 0.15);
    border-radius: calc(var(--radius) / 2);
    opacity: 0;
    transition: opacity 0.25s ease;
    z-index: -1;
    pointer-events: none;
}
.blog-posts li a:hover {
    color: var(--color-primary);
    text-decoration: none;
}
.blog-posts li a:hover::before {
    opacity: 1;
}
/* ========== 响应式:桌面视图(≥768px) ========== */
@media screen and (min-width: 768px) {
    body {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: calc(var(--spacing) / 4);
    }
    header {
        max-width: 25ch;
        top: var(--spacing);
    }
    .title {
        gap: var(--spacing);
    }
    nav p {
        flex-wrap: wrap;
        overflow-x: visible;
        flex-direction: column;
    }
    nav p a {
        width: 100%;
        gap: calc(var(--spacing) / 1.5);
        flex-direction: column;
        padding: calc(var(--spacing) / 1.5) var(--spacing);
        white-space: normal;
    }
    main {
        max-width: 56ch;
        min-width: 38ch;
        transform: translateY(-3px);
    }
    main > article h1,
    main > .post-content h1,
    main > h1:first-of-type {
        font-size: var(--size-step-1);
        max-width: none;
        width: 100%;
    }
    .blog-posts li {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: var(--spacing);
        padding: var(--spacing);
        width: 100%;
    }
    .blog-posts li time {
        font-size: 100%;
        padding-top: 0;
    }
    .blog-posts li a {
        font-size: var(--size-step-1);
    }
    footer {
        width: 100%;
        margin-top: var(--spacing);
        text-align: center;
        padding: calc(var(--spacing) / 1.1) 0 !important;
        font-size: 60%;
        font-weight: 400;
        font-style: normal;
        color: var(--color-primary);
        text-transform: uppercase;
    }
}
/* ========== 响应式:手机视图(≤767px) ========== */
@media screen and (max-width: 767px) {
    /* 文章页面标题字号调小 */
    main > article h1,
    main > .post-content h1,
    main > h1:first-of-type {
        font-size: var(--size-step-2);
        line-height: 1.2;
        margin-bottom: 0.5em;
    }
    nav p {
        flex-wrap: nowrap;
    }
    /* 手机端文章列表优化:增大点击区域 */
    .blog-posts li {
        padding: 12px var(--spacing);
    }
    .blog-posts li time {
        font-size: 0.9em;
    }
}
/* 只在“微语”页面内,对文章列表应用微博样式 */
.microblog .blog-posts li {
    display: flex;
    flex-direction: column;
}
.microblog .blog-posts > li > a {
    display: none; /* 隐藏标题 */
}
.microblog .blog-posts li small.time {
    order: -1;
    margin-bottom: 0.2em;
    color: var(--color-primary);
}
/* 微语卡片左侧边沿线 + 竖排“微语”标签 */
.microblog .blog-posts li {
    position: relative;
    border-left: none;
    padding-left: calc(var(--spacing) * 2);
}
/* 绘制左侧红色边沿线 */
.microblog .blog-posts li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 3%;
    bottom: 3%;
    width: 1px;
    background-color: var(--color-border);
}
/* 添加竖排的“微语”标签 */
.microblog .blog-posts li::after {
    content: '微语';
    position: absolute;
    left: -6px;
    top: 50%;
    transform: translateY(-50%);
    writing-mode: vertical-rl;
    text-orientation: upright;
    color: var(--color-black);
    font-size: 0.9rem;
    font-weight: bold;
    background-color: var(--color-light-2);
    padding: 4px 2px;
    border-radius: 4px;
    line-height: 1.2;
    letter-spacing: 2px;
    z-index: 2;
    box-shadow: var(--shadow);
}
/* 文章上下篇导航 - 左右布局 */
.post-navigation {
    display: flex;
    justify-content: space-between;
    margin-top: calc(var(--spacing) * 2);
    padding-top: var(--spacing);
    border-top: 1px solid var(--color-border);
    gap: var(--spacing);
}
.post-navigation div {
    flex: 1;
    max-width: 45%;
    word-break: break-word;
}
.post-navigation .nav-next {
    text-align: right;
}
/* 当没有文章时隐藏空容器 */
.post-navigation div:empty {
    display: none;
}
/* 如果某一侧隐藏,另一侧可占满 */
.post-navigation:has(div:empty) div:not(:empty) {
    max-width: 100%;
}
/* 链接样式 */
.post-navigation a {
    display: inline-block;
    padding: calc(var(--spacing) / 2) var(--spacing);
    background-color: var(--color-light-2);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    color: var(--color-dark);
    text-decoration: none;
    box-shadow: var(--shadow);
    transition: all 0.2s;
}
.post-navigation a:hover {
    color: var(--color-primary);
    border-color: var(--color-primary);
}
/* 手机响应式 */
@media screen and (max-width: 767px) {
    .post-navigation {
        flex-direction: column;
    }
    .post-navigation div {
        max-width: 100%;
    }
    .nav-next {
        text-align: left;
    }
}

演示地址:bearblog卡片式主题