diff --git a/README.md b/README.md
deleted file mode 100644
index a9f77b5..0000000
--- a/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# django
-
diff --git a/doc/代码注释.css b/doc/代码注释.css
new file mode 100644
index 0000000..df33a32
--- /dev/null
+++ b/doc/代码注释.css
@@ -0,0 +1,521 @@
+/* ==========================================================================
+ 面包屑导航样式
+ ========================================================================== */
+
+.breadcrumb
+div {
+ display: inline;
+ font-size: 13px;
+ margin-left: -3px;
+}
+
+/* ==========================================================================
+ 回到顶部按钮样式
+ ========================================================================== */
+
+/* 回到顶部按钮容器定位 */
+#wp-auto-top {
+ position: fixed;
+ top: 45%;
+ right: 50%;
+ display: block;
+ margin-right: -540px;
+ z-index: 9999;
+}
+
+/* 回到顶部按钮通用样式 */
+#wp-auto-top-top, #wp-auto-top-comment, #wp-auto-top-bottom {
+ background: url(https://www.lylinux.org/wp-content/plugins/wp-auto-top/img/1.png) no-repeat;
+ position: relative;
+ cursor: pointer;
+ height: 25px;
+ width: 29px;
+ margin: 10px 0 0;
+}
+
+/* 评论按钮特定样式 */
+#wp-auto-top-comment {
+ background-position: left -30px;
+ height: 32px;
+}
+
+/* 底部按钮特定样式 */
+#wp-auto-top-bottom {
+ background-position: left -68px;
+}
+
+/* 按钮悬停效果 */
+#wp-auto-top-comment:hover {
+ background-position: right -30px;
+}
+
+#wp-auto-top-top:hover {
+ background-position: right 0;
+}
+
+#wp-auto-top-bottom:hover {
+ background-position: right -68px;
+}
+
+/* ==========================================================================
+ 登录小工具样式
+ ========================================================================== */
+
+.widget-login {
+ margin-top: 15px !important;
+}
+
+/* ==========================================================================
+ 评论区域样式
+ ========================================================================== */
+
+/* 评论区域顶部间距 */
+#comments {
+ margin-top: 20px;
+}
+
+/* 隐藏pingback列表容器 */
+#pinglist-container {
+ display: none;
+}
+
+/* 评论标签页样式 */
+.comment-tabs {
+ margin-bottom: 20px;
+ font-size: 15px;
+ border-bottom: 2px solid #e5e5e5;
+}
+
+.comment-tabs li {
+ float: left;
+ margin-bottom: -2px;
+}
+
+.comment-tabs li a {
+ display: block;
+ padding: 0 10px 10px;
+ font-weight: 600;
+ color: #aaa;
+ border-bottom: 2px solid #e5e5e5;
+}
+
+.comment-tabs li a:hover {
+ color: #444;
+ border-color: #ccc;
+}
+
+.comment-tabs li span {
+ margin-left: 8px;
+ padding: 0 6px;
+ border-radius: 4px;
+ background-color: #e5e5e5;
+}
+
+.comment-tabs li i {
+ margin-right: 6px;
+}
+
+.comment-tabs li.active a {
+ color: #e8554e;
+ border-bottom-color: #e8554e;
+}
+
+/* 评论列表样式 */
+.commentlist, .pinglist {
+ margin-bottom: 20px;
+}
+
+.commentlist li, .pinglist li {
+ padding-left: 60px;
+ font-size: 14px;
+ line-height: 22px;
+ font-weight: 400;
+}
+
+.commentlist .comment-body, .pinglist li {
+ position: relative;
+ padding-bottom: 20px;
+ clear: both;
+ word-break: break-all;
+}
+
+.commentlist .comment-author,
+.commentlist .comment-meta,
+.commentlist .comment-awaiting-moderation {
+ float: left;
+ display: block;
+ font-size: 13px;
+ line-height: 22px;
+}
+
+.commentlist .comment-author {
+ margin-right: 6px;
+}
+
+.commentlist .fn, .pinglist .ping-link {
+ color: #444;
+ font-size: 13px;
+ font-style: normal;
+ font-weight: 600;
+}
+
+.commentlist .says {
+ display: none;
+}
+
+.commentlist .avatar {
+ position: absolute;
+ left: -60px;
+ top: 0;
+ width: 48px;
+ height: 48px;
+ border-radius: 100%;
+}
+
+.commentlist .comment-meta:before, .pinglist .ping-meta:before {
+ vertical-align: 4%;
+ margin-right: 3px;
+ font-size: 10px;
+ font-family: FontAwesome;
+ color: #ccc;
+}
+
+.commentlist .comment-meta a, .pinglist .ping-meta {
+ color: #aaa;
+}
+
+.commentlist .reply {
+ font-size: 13px;
+ line-height: 16px;
+}
+
+.commentlist .reply a,
+.commentlist .comment-reply-chain {
+ color: #aaa;
+}
+
+.commentlist .reply a:hover,
+.commentlist .comment-reply-chain:hover {
+ color: #444;
+}
+
+.comment-awaiting-moderation {
+ color: #e8554e;
+ font-style: normal;
+}
+
+/* pingback 列表样式 */
+.pinglist li {
+ padding-left: 0;
+}
+
+/* 评论文本样式 */
+.commentlist .comment-body p {
+ margin-bottom: 8px;
+ color: #777;
+ clear: both;
+}
+
+.commentlist .comment-body strong {
+ font-weight: 600;
+}
+
+.commentlist .comment-body ol li {
+ margin-left: 2em;
+ padding: 0;
+ list-style: decimal;
+}
+
+.commentlist .comment-body ul li {
+ margin-left: 2em;
+ padding: 0;
+ list-style: square;
+}
+
+/* 文章作者和管理员评论样式 */
+.commentlist li.bypostauthor > .comment-body:after,
+.commentlist li.comment-author-admin > .comment-body:after {
+ display: block;
+ position: absolute;
+ content: "\f040";
+ width: 12px;
+ line-height: 12px;
+ font-style: normal;
+ font-family: FontAwesome;
+ text-align: center;
+ color: #fff;
+ background-color: #e8554e;
+}
+
+.commentlist li.comment-author-admin > .comment-body:after {
+ content: "\f005"; /* 管理员使用星形图标 */
+}
+
+.commentlist li.bypostauthor > .comment-body:after,
+.commentlist li.comment-author-admin > .comment-body:after {
+ padding: 3px;
+ top: 32px;
+ left: -28px;
+ font-size: 12px;
+ border-radius: 100%;
+}
+
+.commentlist li li.bypostauthor > .comment-body:after,
+.commentlist li li.comment-author-admin > .comment-body:after {
+ padding: 2px;
+ top: 22px;
+ left: -26px;
+ font-size: 10px;
+ border-radius: 100%;
+}
+
+/* 子评论样式 */
+.commentlist li ul {
+}
+
+.commentlist li li {
+ margin: 0;
+ padding-left: 48px;
+}
+
+.commentlist li li .avatar {
+ top: 0;
+ left: -48px;
+ width: 36px;
+ height: 36px;
+}
+
+.commentlist li li .comment-meta {
+ left: 70px;
+}
+
+/* 评论导航样式 */
+.comments-nav {
+ margin-bottom: 20px;
+}
+
+.comments-nav a {
+ font-weight: 600;
+}
+
+.comments-nav .nav-previous {
+ float: left;
+}
+
+.comments-nav .nav-next {
+ float: right;
+}
+
+/* 评论表单样式 */
+.logged-in-as,
+.comment-notes,
+.form-allowed-tags {
+ display: none;
+}
+
+/* 设置评论容器相对定位 */
+#respond {
+ position: relative;
+}
+
+/* 回复标题的默认下边距 */
+#reply-title {
+ margin-bottom: 20px;
+}
+
+/* 针对列表项中的回复标题进行特殊处理:隐藏并重置尺寸 */
+li #reply-title {
+ margin: 0 !important;
+ padding: 0;
+ height: 0;
+ font-size: 0;
+ border-top: 0;
+}
+
+/* 取消回复链接的基本样式设置 */
+#cancel-comment-reply-link {
+ float: right;
+ bottom: 26px;
+ right: 20px;
+ font-size: 12px;
+ color: #999;
+}
+
+/* 取消回复链接悬停时的颜色变化 */
+#cancel-comment-reply-link:hover {
+ color: #777;
+}
+
+/* 评论表单整体样式 */
+#commentform {
+ margin-bottom: 20px;
+ padding: 10px 20px 20px;
+ border-radius: 4px;
+ background-color: #e5e5e5;
+}
+
+/* 表单作者字段左浮动占宽48% */
+#commentform p.comment-form-author {
+ float: left;
+ width: 48%;
+}
+
+/* 表单邮箱字段右浮动占宽48% */
+#commentform p.comment-form-email {
+ float: right;
+ width: 48%;
+}
+
+/* URL 和评论正文字段清除浮动并独占一行 */
+#commentform p.comment-form-url,
+#commentform p.comment-form-comment {
+ clear: both;
+}
+
+/* 表单标签统一显示为块级元素,并设置上下内边距与字体加粗 */
+#commentform label {
+ display: block;
+ padding: 6px 0;
+ font-weight: 600;
+}
+
+/* 输入框和文本域最大宽度限制为父容器100%,且默认撑满 */
+#commentform input[type="text"],
+#commentform textarea {
+ max-width: 100%;
+ width: 100%;
+}
+
+/* 文本域高度固定为100像素 */
+#commentform textarea {
+ height: 100px;
+}
+
+/* 提交按钮段落上外边距调整 */
+#commentform p.form-submit {
+ margin-top: 10px;
+}
+
+/* 登录状态下回复标题保持标准间距 */
+.logged-in #reply-title {
+ margin-bottom: 20px;
+}
+
+/* 登录状态下的评论正文字段增加顶部间距 */
+.logged-in #commentform p.comment-form-comment {
+ margin-top: 10px;
+}
+
+/* 登录状态下评论正文标签隐藏 */
+.logged-in #commentform p.comment-form-comment label {
+ display: none;
+}
+
+/* 统一标题类(包括回复标题)的基础样式 */
+.heading,
+#reply-title {
+ margin-bottom: 1em;
+ font-size: 18px;
+ font-weight: 600;
+ text-transform: uppercase;
+ color: #222;
+}
+
+/* 标题图标样式设置 */
+.heading i {
+ margin-right: 6px;
+ font-size: 22px;
+}
+
+/* 清除浮动伪类 before */
+.group:before {
+ content: "";
+ display: table;
+}
+
+/* 清除浮动伪类 after */
+.group:after {
+ content: "";
+ display: table;
+ clear: both;
+}
+
+/* 取消评论按钮基础样式重置 */
+.cancel-comment {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ font: inherit;
+ vertical-align: baseline;
+}
+
+/* 返回顶部火箭图标的初始位置及基本属性 */
+#rocket {
+ position: fixed;
+ right: 50px;
+ bottom: 50px;
+ display: block;
+ visibility: hidden;
+ width: 26px;
+ height: 48px;
+ background: url("data:image/png;base64,...") no-repeat 50% 0;
+ cursor: pointer;
+ -webkit-transition: all 0s;
+ transition: all 0s;
+}
+
+/* 火箭图标鼠标悬停时背景图片偏移以切换状态 */
+#rocket:hover {
+ background-position: 50% -62px;
+}
+
+/* 显示火箭图标 */
+#rocket.show {
+ visibility: visible;
+ opacity: 1;
+}
+
+/* 触发动画时火箭图标的状态更新与动画绑定 */
+#rocket.move {
+ background-position: 50% -62px;
+ -webkit-animation: toTop .8s ease-in;
+ animation: toTop .8s ease-in;
+ animation-fill-mode: forwards;
+ -webkit-animation-fill-mode: forwards;
+}
+
+/* Markdown提示文字样式设置 */
+.comment-markdown {
+ float: right;
+ font-size: small;
+}
+
+/* 面包屑导航容器样式 */
+.breadcrumb {
+ margin-bottom: 20px;
+ list-style: none;
+ border-radius: 4px;
+}
+
+/* 面包屑导航项横向排列 */
+.breadcrumb > li {
+ display: inline-block;
+}
+
+/* 面包屑导航项之间的分隔符 */
+.breadcrumb > li + li:before {
+ color: #ccc;
+ content: "/\00a0";
+}
+
+/* 当前激活的面包屑导航项颜色 */
+.breadcrumb > .active {
+ color: #777;
+}
+
+/* 分割线样式(当前被注释掉) */
+.break_line {
+ height: 1px;
+ border: none;
+ /*border-top: 1px dashed #f5d6d6;*/
+}
\ No newline at end of file
diff --git a/src/DjangoBlog-master/comments/admin.py b/src/DjangoBlog-master/comments/admin.py
index a814f3f..d412b89 100644
--- a/src/DjangoBlog-master/comments/admin.py
+++ b/src/DjangoBlog-master/comments/admin.py
@@ -1,47 +1,49 @@
-from django.contrib import admin
-from django.urls import reverse
-from django.utils.html import format_html
-from django.utils.translation import gettext_lazy as _
+from django.contrib import admin# 导入Django admin相关模块,用于自定义后台管理
+from django.urls import reverse# 导入reverse函数,用于生成URL反向解析
+from django.utils.html import format_html# 导入format_html,用于安全生成HTML内容(防止XSS攻击)
+from django.utils.translation import gettext_lazy as _# 导入gettext_lazy,用于国际化翻译(惰性加载,优化性能)
-def disable_commentstatus(modeladmin, request, queryset):
- queryset.update(is_enable=False)
+def disable_commentstatus(modeladmin, request, queryset):# 自定义批量操作:禁用评论状态
+ queryset.update(is_enable=False)# 将选中的评论记录批量更新is_enable字段为False(禁用)
-def enable_commentstatus(modeladmin, request, queryset):
- queryset.update(is_enable=True)
+def enable_commentstatus(modeladmin, request, queryset):# 自定义批量操作:启用评论状态
+ queryset.update(is_enable=True) # 将选中的评论记录批量更新is_enable字段为True(启用)
-disable_commentstatus.short_description = _('Disable comments')
+disable_commentstatus.short_description = _('Disable comments')# 为批量操作设置显示名称(支持国际化)
enable_commentstatus.short_description = _('Enable comments')
-
+# 自定义评论模型的Admin管理类,控制后台评论的展示和操作
class CommentAdmin(admin.ModelAdmin):
- list_per_page = 20
- list_display = (
+ list_per_page = 20# 每页显示20条评论记录
+ list_display = (# 列表页展示的字段(自定义字段需在类中定义对应方法)
'id',
'body',
'link_to_userinfo',
'link_to_article',
'is_enable',
'creation_time')
- list_display_links = ('id', 'body', 'is_enable')
- list_filter = ('is_enable',)
- exclude = ('creation_time', 'last_modify_time')
- actions = [disable_commentstatus, enable_commentstatus]
-
- def link_to_userinfo(self, obj):
- info = (obj.author._meta.app_label, obj.author._meta.model_name)
- link = reverse('admin:%s_%s_change' % info, args=(obj.author.id,))
- return format_html(
+ list_display_links = ('id', 'body', 'is_enable')# 列表页中可点击跳转编辑页的字段
+ list_filter = ('is_enable',)# 右侧过滤条件(按是否启用筛选)
+ exclude = ('creation_time', 'last_modify_time')# 编辑页排除的字段(创建时间和最后修改时间通常自动生成,不允许手动编辑)
+ actions = [disable_commentstatus, enable_commentstatus]# 注册批量操作(将上面定义的两个函数加入到后台操作中)
+
+ def link_to_userinfo(self, obj):# 自定义字段:生成关联用户的后台编辑链接
+ info = (obj.author._meta.app_label, obj.author._meta.model_name)# 获取用户模型的app标签和模型名称(用于生成admin URL)
+ # obj.author表示评论关联的用户对象
+ link = reverse('admin:%s_%s_change' % info, args=(obj.author.id,))# 反向解析生成用户模型的编辑页URL(格式:admin:app_label_model_name_change)
+ return format_html( # 生成HTML链接,显示用户昵称(若无昵称则显示邮箱)
u'%s' %
(link, obj.author.nickname if obj.author.nickname else obj.author.email))
- def link_to_article(self, obj):
- info = (obj.article._meta.app_label, obj.article._meta.model_name)
- link = reverse('admin:%s_%s_change' % info, args=(obj.article.id,))
- return format_html(
+ def link_to_article(self, obj):# 自定义字段:生成关联文章的后台编辑链接
+ info = (obj.article._meta.app_label, obj.article._meta.model_name)# 获取文章模型的app标签和模型名称
+ # obj.article表示评论关联的文章对象
+ link = reverse('admin:%s_%s_change' % info, args=(obj.article.id,))# 反向解析生成文章模型的编辑页URL
+ return format_html(# 生成HTML链接,显示文章标题
u'%s' % (link, obj.article.title))
-
- link_to_userinfo.short_description = _('User')
- link_to_article.short_description = _('Article')
+ # 自定义字段的显示名称(支持国际化)
+ link_to_userinfo.short_description = _('User')# 显示为"用户"
+ link_to_article.short_description = _('Article')# 显示为"文章"
diff --git a/src/DjangoBlog-master/djangoblog/feeds.py b/src/DjangoBlog-master/djangoblog/feeds.py
index 8c4e851..0ca207c 100644
--- a/src/DjangoBlog-master/djangoblog/feeds.py
+++ b/src/DjangoBlog-master/djangoblog/feeds.py
@@ -6,7 +6,7 @@ from django.utils.feedgenerator import Rss201rev2Feed
from blog.models import Article
from djangoblog.utils import CommonMarkdown
-
+/*注释*/
class DjangoBlogFeed(Feed):
feed_type = Rss201rev2Feed
diff --git a/src/代码注释.css b/src/代码注释.css
new file mode 100644
index 0000000..df33a32
--- /dev/null
+++ b/src/代码注释.css
@@ -0,0 +1,521 @@
+/* ==========================================================================
+ 面包屑导航样式
+ ========================================================================== */
+
+.breadcrumb
+div {
+ display: inline;
+ font-size: 13px;
+ margin-left: -3px;
+}
+
+/* ==========================================================================
+ 回到顶部按钮样式
+ ========================================================================== */
+
+/* 回到顶部按钮容器定位 */
+#wp-auto-top {
+ position: fixed;
+ top: 45%;
+ right: 50%;
+ display: block;
+ margin-right: -540px;
+ z-index: 9999;
+}
+
+/* 回到顶部按钮通用样式 */
+#wp-auto-top-top, #wp-auto-top-comment, #wp-auto-top-bottom {
+ background: url(https://www.lylinux.org/wp-content/plugins/wp-auto-top/img/1.png) no-repeat;
+ position: relative;
+ cursor: pointer;
+ height: 25px;
+ width: 29px;
+ margin: 10px 0 0;
+}
+
+/* 评论按钮特定样式 */
+#wp-auto-top-comment {
+ background-position: left -30px;
+ height: 32px;
+}
+
+/* 底部按钮特定样式 */
+#wp-auto-top-bottom {
+ background-position: left -68px;
+}
+
+/* 按钮悬停效果 */
+#wp-auto-top-comment:hover {
+ background-position: right -30px;
+}
+
+#wp-auto-top-top:hover {
+ background-position: right 0;
+}
+
+#wp-auto-top-bottom:hover {
+ background-position: right -68px;
+}
+
+/* ==========================================================================
+ 登录小工具样式
+ ========================================================================== */
+
+.widget-login {
+ margin-top: 15px !important;
+}
+
+/* ==========================================================================
+ 评论区域样式
+ ========================================================================== */
+
+/* 评论区域顶部间距 */
+#comments {
+ margin-top: 20px;
+}
+
+/* 隐藏pingback列表容器 */
+#pinglist-container {
+ display: none;
+}
+
+/* 评论标签页样式 */
+.comment-tabs {
+ margin-bottom: 20px;
+ font-size: 15px;
+ border-bottom: 2px solid #e5e5e5;
+}
+
+.comment-tabs li {
+ float: left;
+ margin-bottom: -2px;
+}
+
+.comment-tabs li a {
+ display: block;
+ padding: 0 10px 10px;
+ font-weight: 600;
+ color: #aaa;
+ border-bottom: 2px solid #e5e5e5;
+}
+
+.comment-tabs li a:hover {
+ color: #444;
+ border-color: #ccc;
+}
+
+.comment-tabs li span {
+ margin-left: 8px;
+ padding: 0 6px;
+ border-radius: 4px;
+ background-color: #e5e5e5;
+}
+
+.comment-tabs li i {
+ margin-right: 6px;
+}
+
+.comment-tabs li.active a {
+ color: #e8554e;
+ border-bottom-color: #e8554e;
+}
+
+/* 评论列表样式 */
+.commentlist, .pinglist {
+ margin-bottom: 20px;
+}
+
+.commentlist li, .pinglist li {
+ padding-left: 60px;
+ font-size: 14px;
+ line-height: 22px;
+ font-weight: 400;
+}
+
+.commentlist .comment-body, .pinglist li {
+ position: relative;
+ padding-bottom: 20px;
+ clear: both;
+ word-break: break-all;
+}
+
+.commentlist .comment-author,
+.commentlist .comment-meta,
+.commentlist .comment-awaiting-moderation {
+ float: left;
+ display: block;
+ font-size: 13px;
+ line-height: 22px;
+}
+
+.commentlist .comment-author {
+ margin-right: 6px;
+}
+
+.commentlist .fn, .pinglist .ping-link {
+ color: #444;
+ font-size: 13px;
+ font-style: normal;
+ font-weight: 600;
+}
+
+.commentlist .says {
+ display: none;
+}
+
+.commentlist .avatar {
+ position: absolute;
+ left: -60px;
+ top: 0;
+ width: 48px;
+ height: 48px;
+ border-radius: 100%;
+}
+
+.commentlist .comment-meta:before, .pinglist .ping-meta:before {
+ vertical-align: 4%;
+ margin-right: 3px;
+ font-size: 10px;
+ font-family: FontAwesome;
+ color: #ccc;
+}
+
+.commentlist .comment-meta a, .pinglist .ping-meta {
+ color: #aaa;
+}
+
+.commentlist .reply {
+ font-size: 13px;
+ line-height: 16px;
+}
+
+.commentlist .reply a,
+.commentlist .comment-reply-chain {
+ color: #aaa;
+}
+
+.commentlist .reply a:hover,
+.commentlist .comment-reply-chain:hover {
+ color: #444;
+}
+
+.comment-awaiting-moderation {
+ color: #e8554e;
+ font-style: normal;
+}
+
+/* pingback 列表样式 */
+.pinglist li {
+ padding-left: 0;
+}
+
+/* 评论文本样式 */
+.commentlist .comment-body p {
+ margin-bottom: 8px;
+ color: #777;
+ clear: both;
+}
+
+.commentlist .comment-body strong {
+ font-weight: 600;
+}
+
+.commentlist .comment-body ol li {
+ margin-left: 2em;
+ padding: 0;
+ list-style: decimal;
+}
+
+.commentlist .comment-body ul li {
+ margin-left: 2em;
+ padding: 0;
+ list-style: square;
+}
+
+/* 文章作者和管理员评论样式 */
+.commentlist li.bypostauthor > .comment-body:after,
+.commentlist li.comment-author-admin > .comment-body:after {
+ display: block;
+ position: absolute;
+ content: "\f040";
+ width: 12px;
+ line-height: 12px;
+ font-style: normal;
+ font-family: FontAwesome;
+ text-align: center;
+ color: #fff;
+ background-color: #e8554e;
+}
+
+.commentlist li.comment-author-admin > .comment-body:after {
+ content: "\f005"; /* 管理员使用星形图标 */
+}
+
+.commentlist li.bypostauthor > .comment-body:after,
+.commentlist li.comment-author-admin > .comment-body:after {
+ padding: 3px;
+ top: 32px;
+ left: -28px;
+ font-size: 12px;
+ border-radius: 100%;
+}
+
+.commentlist li li.bypostauthor > .comment-body:after,
+.commentlist li li.comment-author-admin > .comment-body:after {
+ padding: 2px;
+ top: 22px;
+ left: -26px;
+ font-size: 10px;
+ border-radius: 100%;
+}
+
+/* 子评论样式 */
+.commentlist li ul {
+}
+
+.commentlist li li {
+ margin: 0;
+ padding-left: 48px;
+}
+
+.commentlist li li .avatar {
+ top: 0;
+ left: -48px;
+ width: 36px;
+ height: 36px;
+}
+
+.commentlist li li .comment-meta {
+ left: 70px;
+}
+
+/* 评论导航样式 */
+.comments-nav {
+ margin-bottom: 20px;
+}
+
+.comments-nav a {
+ font-weight: 600;
+}
+
+.comments-nav .nav-previous {
+ float: left;
+}
+
+.comments-nav .nav-next {
+ float: right;
+}
+
+/* 评论表单样式 */
+.logged-in-as,
+.comment-notes,
+.form-allowed-tags {
+ display: none;
+}
+
+/* 设置评论容器相对定位 */
+#respond {
+ position: relative;
+}
+
+/* 回复标题的默认下边距 */
+#reply-title {
+ margin-bottom: 20px;
+}
+
+/* 针对列表项中的回复标题进行特殊处理:隐藏并重置尺寸 */
+li #reply-title {
+ margin: 0 !important;
+ padding: 0;
+ height: 0;
+ font-size: 0;
+ border-top: 0;
+}
+
+/* 取消回复链接的基本样式设置 */
+#cancel-comment-reply-link {
+ float: right;
+ bottom: 26px;
+ right: 20px;
+ font-size: 12px;
+ color: #999;
+}
+
+/* 取消回复链接悬停时的颜色变化 */
+#cancel-comment-reply-link:hover {
+ color: #777;
+}
+
+/* 评论表单整体样式 */
+#commentform {
+ margin-bottom: 20px;
+ padding: 10px 20px 20px;
+ border-radius: 4px;
+ background-color: #e5e5e5;
+}
+
+/* 表单作者字段左浮动占宽48% */
+#commentform p.comment-form-author {
+ float: left;
+ width: 48%;
+}
+
+/* 表单邮箱字段右浮动占宽48% */
+#commentform p.comment-form-email {
+ float: right;
+ width: 48%;
+}
+
+/* URL 和评论正文字段清除浮动并独占一行 */
+#commentform p.comment-form-url,
+#commentform p.comment-form-comment {
+ clear: both;
+}
+
+/* 表单标签统一显示为块级元素,并设置上下内边距与字体加粗 */
+#commentform label {
+ display: block;
+ padding: 6px 0;
+ font-weight: 600;
+}
+
+/* 输入框和文本域最大宽度限制为父容器100%,且默认撑满 */
+#commentform input[type="text"],
+#commentform textarea {
+ max-width: 100%;
+ width: 100%;
+}
+
+/* 文本域高度固定为100像素 */
+#commentform textarea {
+ height: 100px;
+}
+
+/* 提交按钮段落上外边距调整 */
+#commentform p.form-submit {
+ margin-top: 10px;
+}
+
+/* 登录状态下回复标题保持标准间距 */
+.logged-in #reply-title {
+ margin-bottom: 20px;
+}
+
+/* 登录状态下的评论正文字段增加顶部间距 */
+.logged-in #commentform p.comment-form-comment {
+ margin-top: 10px;
+}
+
+/* 登录状态下评论正文标签隐藏 */
+.logged-in #commentform p.comment-form-comment label {
+ display: none;
+}
+
+/* 统一标题类(包括回复标题)的基础样式 */
+.heading,
+#reply-title {
+ margin-bottom: 1em;
+ font-size: 18px;
+ font-weight: 600;
+ text-transform: uppercase;
+ color: #222;
+}
+
+/* 标题图标样式设置 */
+.heading i {
+ margin-right: 6px;
+ font-size: 22px;
+}
+
+/* 清除浮动伪类 before */
+.group:before {
+ content: "";
+ display: table;
+}
+
+/* 清除浮动伪类 after */
+.group:after {
+ content: "";
+ display: table;
+ clear: both;
+}
+
+/* 取消评论按钮基础样式重置 */
+.cancel-comment {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ font: inherit;
+ vertical-align: baseline;
+}
+
+/* 返回顶部火箭图标的初始位置及基本属性 */
+#rocket {
+ position: fixed;
+ right: 50px;
+ bottom: 50px;
+ display: block;
+ visibility: hidden;
+ width: 26px;
+ height: 48px;
+ background: url("data:image/png;base64,...") no-repeat 50% 0;
+ cursor: pointer;
+ -webkit-transition: all 0s;
+ transition: all 0s;
+}
+
+/* 火箭图标鼠标悬停时背景图片偏移以切换状态 */
+#rocket:hover {
+ background-position: 50% -62px;
+}
+
+/* 显示火箭图标 */
+#rocket.show {
+ visibility: visible;
+ opacity: 1;
+}
+
+/* 触发动画时火箭图标的状态更新与动画绑定 */
+#rocket.move {
+ background-position: 50% -62px;
+ -webkit-animation: toTop .8s ease-in;
+ animation: toTop .8s ease-in;
+ animation-fill-mode: forwards;
+ -webkit-animation-fill-mode: forwards;
+}
+
+/* Markdown提示文字样式设置 */
+.comment-markdown {
+ float: right;
+ font-size: small;
+}
+
+/* 面包屑导航容器样式 */
+.breadcrumb {
+ margin-bottom: 20px;
+ list-style: none;
+ border-radius: 4px;
+}
+
+/* 面包屑导航项横向排列 */
+.breadcrumb > li {
+ display: inline-block;
+}
+
+/* 面包屑导航项之间的分隔符 */
+.breadcrumb > li + li:before {
+ color: #ccc;
+ content: "/\00a0";
+}
+
+/* 当前激活的面包屑导航项颜色 */
+.breadcrumb > .active {
+ color: #777;
+}
+
+/* 分割线样式(当前被注释掉) */
+.break_line {
+ height: 1px;
+ border: none;
+ /*border-top: 1px dashed #f5d6d6;*/
+}
\ No newline at end of file