update to 2.2
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
|
||||
* [Romanticism]
|
||||
* OwO.php 评论区表情文件
|
||||
* @version 2.1
|
||||
* @version 2.0
|
||||
**/
|
||||
?>
|
||||
|
||||
|
@@ -1,6 +1,6 @@
|
||||
<?php
|
||||
/**
|
||||
|
||||
|
||||
_ _ __ _ ____ _ _ ___
|
||||
/ \ | |/ / / \ / ___|| | | |_ _|
|
||||
/ _ \ | ' / / _ \ \___ \| |_| || |
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
* [Romanticism]
|
||||
* comments.php 评论区配置文件
|
||||
* @version 2.1
|
||||
* @version 2.2
|
||||
* 参考自 Typecho 自带的默认主题
|
||||
**/
|
||||
?>
|
||||
@@ -20,72 +20,75 @@
|
||||
|
||||
|
||||
<!--展示评论区-->
|
||||
<?php function threadedComments($comments, $options) {
|
||||
<?php
|
||||
function threadedComments($comments, $options) {
|
||||
$commentClass = '';
|
||||
if ($comments->authorId) {
|
||||
if ($comments->authorId == $comments->ownerId) {
|
||||
$commentClass = '<b><span class="btnyuan adminsign"> 作者 </span></b>'; //如果是文章作者的评论添加样式
|
||||
}else{
|
||||
$commentClass = '<b><span class="btnyuan adminsign blur" style="margin-left:0;"> 作者 </span></b>';
|
||||
}
|
||||
}
|
||||
$commentLevelClass = $comments->_levels > 0 ? ' comment-child' : ' comment-parent'; //评论层数大于0为子级,否则是父级
|
||||
}
|
||||
// 如果评论状态是审核中
|
||||
if ($comments->status != 'approved') {
|
||||
$comments->content = '<span class="btnyuan adminsign blur" style="margin-left:-5px;"> 当前评论将在审核后展示 </span>' . $comments->content;
|
||||
}
|
||||
$commentLevelClass = $comments->_levels > 0 ? ' comment-child' : ' comment-parent';
|
||||
?>
|
||||
|
||||
|
||||
<li id="li-<?php $comments->theId(); ?>" class="comment-body<?php
|
||||
if ($comments->levels > 0) {
|
||||
echo ' comment-child';
|
||||
$comments->levelsAlt(' comment-level-odd', ' comment-level-even');
|
||||
}else{
|
||||
echo ' comment-parent';
|
||||
}
|
||||
$comments->alt(' comment-odd', ' comment-even');
|
||||
if ($comments->levels > 0) {
|
||||
echo ' comment-child';
|
||||
$comments->levelsAlt(' comment-level-odd', ' comment-level-even');
|
||||
} else {
|
||||
echo ' comment-parent';
|
||||
}
|
||||
$comments->alt(' comment-odd', ' comment-even');
|
||||
?>">
|
||||
<div id="<?php $comments->theId(); ?>" style="margin-bottom:10px;">
|
||||
<div class="comment-author ">
|
||||
<span itemprop="image">
|
||||
<?php //Gravatar 头像源
|
||||
$mail=$comments->mail;
|
||||
$mail=md5($mail);
|
||||
$headicon='https://cravatar.cn/avatar/'.$mail.'.png';
|
||||
echo '<img class="headicon" src="'.$headicon.'" height="46px" width="46px" style="border-radius:50%;float:left;margin-top:0px;margin-right:10px;margin-bottom:-2px" loading="lazy">';
|
||||
?>
|
||||
</span>
|
||||
<p><b style="position: relative; top: 1px;"><?php $comments->author(); ?></b><small class="mdui-typo-caption-opacity"><?php echo $commentClass; ?><?php getOs($comments->agent); ?> <?php getBrowser($comments->agent); ?></small></p>
|
||||
</div>
|
||||
|
||||
<div class="mdui-typo-caption-opacity"><?php $comments->date('y-m-d H:i'); ?> · <b><?php $comments->reply('回复'); ?></b></div>
|
||||
<div id="<?php $comments->theId(); ?>" style="margin-bottom:10px;">
|
||||
<div class="comment-author ">
|
||||
<span itemprop="image">
|
||||
<?php
|
||||
$mail = md5($comments->mail);
|
||||
$headicon = 'https://cravatar.cn/avatar/'.$mail.'.png';
|
||||
echo '<img class="headicon" src="'.$headicon.'" height="46px" width="46px" style="border-radius:50%;float:left;margin-top:0px;margin-right:10px;margin-bottom:-2px" loading="lazy">';
|
||||
?>
|
||||
</span>
|
||||
<p>
|
||||
<b style="position: relative; top: 1px;"><?php $comments->author(); ?></b>
|
||||
<small class="mdui-typo-caption-opacity">
|
||||
<?php echo $commentClass; ?><?php getOs($comments->agent); ?> <?php getBrowser($comments->agent); ?>
|
||||
</small>
|
||||
</p>
|
||||
</div>
|
||||
<div class="mdui-typo-caption-opacity">
|
||||
<?php $comments->date('y-m-d H:i'); ?> · <b><?php $comments->reply('回复'); ?></b>
|
||||
</div>
|
||||
<?php
|
||||
// 解析带表情的评论内容
|
||||
$parsedComment = preg_replace_callback(
|
||||
'#\@OwO(b)?\((.*?)\)#',
|
||||
function ($matches) {
|
||||
$width = $matches[1] ? '50' : '30'; // "b"ig表情
|
||||
$emoticon = $matches[2];
|
||||
$themeUrl = htmlspecialchars($GLOBALS['theme_url'], ENT_QUOTES, 'UTF-8');
|
||||
|
||||
return '<img style="width:' . $width . 'px; height:auto; margin-bottom:-7px;" ' .
|
||||
'src="' . $themeUrl . '/config/style/img/bili/' . $emoticon . '.webp" ' .
|
||||
'loading="lazy" alt="' . $emoticon . '">';
|
||||
},
|
||||
$comments->content
|
||||
);
|
||||
echo '<div style="padding-top:5px;">' . $parsedComment . '</div>';
|
||||
// 解析带表情的评论内容
|
||||
$parsedComment = preg_replace_callback(
|
||||
'#\@OwO(b)?\((.*?)\)#',
|
||||
function ($matches) {
|
||||
$width = $matches[1] ? '50' : '30';
|
||||
$emoticon = $matches[2];
|
||||
$themeUrl = htmlspecialchars($GLOBALS['theme_url'], ENT_QUOTES, 'UTF-8');
|
||||
return '<img style="width:' . $width . 'px; height:auto; margin-bottom:-7px;" src="' . $themeUrl . '/config/style/img/bili/' . $emoticon . '.webp" loading="lazy" alt="' . $emoticon . '">';
|
||||
},
|
||||
$comments->content
|
||||
);
|
||||
echo '<div style="padding-top:5px;">' . $parsedComment . '</div>';
|
||||
?>
|
||||
|
||||
</div>
|
||||
<div class="content">
|
||||
<hr>
|
||||
</div>
|
||||
<?php if ($comments->children) { ?>
|
||||
<div class="comment-children">
|
||||
<?php $comments->threadedComments($options); ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
<div class="content">
|
||||
<hr>
|
||||
</div>
|
||||
<?php if ($comments->children) { ?>
|
||||
<div class="comment-children">
|
||||
<?php $comments->threadedComments($options); ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
</li>
|
||||
|
||||
<?php } ?>
|
||||
|
||||
|
||||
|
||||
<!--撰写评论区-->
|
||||
<div id="comments">
|
||||
@@ -95,65 +98,68 @@ $comments->alt(' comment-odd', ' comment-even');
|
||||
<?php if($this->allow('comment')): ?>
|
||||
<div id="<?php $this->respondId(); ?>" class="respond">
|
||||
<div class="cancel-comment-reply">
|
||||
<?php $comments->cancelReply(); ?>
|
||||
</div>
|
||||
<?php $comments->cancelReply(); ?>
|
||||
</div>
|
||||
|
||||
<h3 id="response"><?php _e('添加新评论'); ?></h3>
|
||||
<form method="post" action="<?php $this->commentUrl() ?>" id="comment-form" role="form">
|
||||
<?php if($this->user->hasLogin()): ?>
|
||||
当前登录身份:<?php $this->author->screenName(); ?><br><br>
|
||||
<div class="OwO-logo" onclick="OwO_show()"><!--登录状态下-->
|
||||
<kbd>OωO表情</kbd>
|
||||
</div>
|
||||
<span class="akarom-alter-button-valign mdui-float-left">
|
||||
<span class="akarom-alter-button blur yuan" onclick="OwO_show()">
|
||||
<i class="mdui-icon material-icons">face</i><b>表情</b>
|
||||
</span>
|
||||
</span>
|
||||
<br><br>
|
||||
<?php $this->need('config/OwO.php'); ?>
|
||||
<div class="mdui-textfield mdui-textfield-floating-label">
|
||||
<i class="mdui-icon material-icons">textsms</i>
|
||||
<textarea class="mdui-textfield-input" name="text" id="textarea" value="<?php $this->remember('text'); ?>" placeholder="开始发表评论吧" required/></textarea>
|
||||
<div class="mdui-textfield-error">内容不能为空</div>
|
||||
</div>
|
||||
<?php AKAROM_simple_captcha_math();?>
|
||||
<?php else: ?>
|
||||
<div class="OwO-logo" onclick="OwO_show()"><!--非登录状态下-->
|
||||
<kbd>OωO表情</kbd>
|
||||
</div>
|
||||
<br><br>
|
||||
<?php $this->need('config/OwO.php'); ?>
|
||||
<div class="mdui-textfield mdui-textfield-floating-label">
|
||||
<i class="mdui-icon material-icons">textsms</i>
|
||||
<textarea class="mdui-textfield-input" name="text" id="textarea" value="<?php $this->remember('text'); ?>" placeholder="说点什么吧~" required/></textarea>
|
||||
<div class="mdui-textfield-error">内容不能为空</div>
|
||||
</div>
|
||||
|
||||
<div class="mdui-row">
|
||||
<div class="mdui-col-sm-6">
|
||||
<div class="mdui-textfield">
|
||||
<i class="mdui-icon material-icons">account_circle</i>
|
||||
<input class="mdui-textfield-input" name="author" id="author" value="<?php $this->remember('author'); ?>" type="text" placeholder="昵称" required/>
|
||||
<div class="mdui-textfield-error">昵称不能为空</div>
|
||||
</div>
|
||||
<i class="mdui-icon material-icons">textsms</i>
|
||||
<textarea class="mdui-textfield-input" name="text" id="textarea" placeholder="开始发表评论吧" required><?php $this->remember('text'); ?></textarea>
|
||||
<div class="mdui-textfield-error">内容不能为空</div>
|
||||
</div>
|
||||
<div class="mdui-col-sm-6">
|
||||
<div class="mdui-textfield">
|
||||
<i class="mdui-icon material-icons">email</i>
|
||||
<input class="mdui-textfield-input" type="email" name="mail" id="mail" value="<?php $this->remember('mail'); ?>" placeholder="电子邮件" required/>
|
||||
<div class="mdui-textfield-error">邮件地址格式错误</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mdui-row">
|
||||
<div class="mdui-col-sm-6">
|
||||
<div class="mdui-textfield">
|
||||
<i class="mdui-icon material-icons">web</i>
|
||||
<input class="mdui-textfield-input" type="url" name="url" id="url" value="<?php $this->remember('url'); ?>" placeholder="网站(选填)(https://)">
|
||||
</div>
|
||||
</div>
|
||||
<div class="mdui-col-sm-6">
|
||||
<?php AKAROM_simple_captcha_math();?>
|
||||
<?php else: ?> <!--非登录状态下-->
|
||||
<span class="akarom-alter-button-valign mdui-float-left">
|
||||
<span class="akarom-alter-button blur yuan" onclick="OwO_show()">
|
||||
<i class="mdui-icon material-icons">face</i><b>表情</b>
|
||||
</span>
|
||||
</span>
|
||||
<br><br>
|
||||
<?php $this->need('config/OwO.php'); ?>
|
||||
<div class="mdui-textfield mdui-textfield-floating-label">
|
||||
<i class="mdui-icon material-icons">textsms</i>
|
||||
<textarea class="mdui-textfield-input" name="text" id="textarea" placeholder="说点什么吧~" required><?php $this->remember('text'); ?></textarea>
|
||||
<div class="mdui-textfield-error">内容不能为空</div>
|
||||
</div>
|
||||
|
||||
<div class="mdui-row">
|
||||
<div class="mdui-col-sm-6">
|
||||
<div class="mdui-textfield">
|
||||
<img class="mdui-icon material-icons" id="preheadicon" src="https://cravatar.cn/avatar/default.png" height="34px" width="34px" style="border-radius:50%;float:left;margin-left:-5px;margin-bottom:-5px">
|
||||
<input class="mdui-textfield-input" name="author" id="author" type="text" placeholder="昵称" value="<?php $this->remember('author'); ?>" required/>
|
||||
<div class="mdui-textfield-error">昵称不能为空</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mdui-col-sm-6">
|
||||
<div class="mdui-textfield">
|
||||
<i class="mdui-icon material-icons">email</i>
|
||||
<input class="mdui-textfield-input" type="email" name="mail" id="mail" value="<?php $this->remember('mail'); ?>" placeholder="电子邮件" required/>
|
||||
<div class="mdui-textfield-error">邮件地址格式错误</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mdui-row">
|
||||
<div class="mdui-col-sm-6">
|
||||
<div class="mdui-textfield">
|
||||
<i class="mdui-icon material-icons">web</i>
|
||||
<input class="mdui-textfield-input" type="url" name="url" id="url" value="<?php $this->remember('url'); ?>" placeholder="网站(选填)(https://)">
|
||||
</div>
|
||||
</div>
|
||||
<div class="mdui-col-sm-6">
|
||||
<?php AKAROM_simple_captcha_math();?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php endif; ?>
|
||||
<span class="akarom-alter-button-valign">
|
||||
<span class="akarom-alter-button akarom-alter-button-disabled blur yuan mdui-center" id="submitComment">
|
||||
@@ -163,14 +169,14 @@ $comments->alt(' comment-odd', ' comment-even');
|
||||
<script>
|
||||
function checkInputs() {
|
||||
const textarea = document.getElementById("textarea");
|
||||
const sum = document.getElementById("sum");
|
||||
|
||||
const button = document.getElementById("submitComment");
|
||||
|
||||
if (!textarea || !sum || !button) {
|
||||
if (!textarea || !button) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (textarea.value.trim() !== "" && sum.value.trim() !== "") {
|
||||
if (textarea.value.trim() !== "") {
|
||||
button.classList.remove("akarom-alter-button-disabled");
|
||||
} else {
|
||||
button.classList.add("akarom-alter-button-disabled");
|
||||
@@ -178,7 +184,6 @@ $comments->alt(' comment-odd', ' comment-even');
|
||||
}
|
||||
|
||||
document.getElementById("textarea").addEventListener("input", checkInputs);
|
||||
document.getElementById("sum").addEventListener("input", checkInputs);
|
||||
|
||||
document.getElementById("submitComment").addEventListener("click", function() {
|
||||
if (!document.getElementById("submitComment").classList.contains("akarom-alter-button-disabled")) {
|
||||
@@ -194,20 +199,19 @@ $comments->alt(' comment-odd', ' comment-even');
|
||||
<i class="mdui-icon material-icons">error_outline</i> 当前评论区已关闭
|
||||
</h3>
|
||||
<?php endif; ?>
|
||||
<hr>
|
||||
<hr>
|
||||
<?php if ($comments->have()): ?>
|
||||
<h3><?php $this->commentsNum( _t('仅有一条评论'), _t('已有 %d 条评论')); ?></h3>
|
||||
<?php $comments->listComments(); ?>
|
||||
<span calss="outlineborder">
|
||||
<?php $comments->pageNav('< 前一页', '后一页 >'); ?>
|
||||
<span class="outlineborder">
|
||||
<?php $comments->pageNav('< 前一页', '后一页 >'); ?>
|
||||
</span>
|
||||
<?php endif; ?>
|
||||
<?php if (!($comments->have())): ?>
|
||||
<?php if (!$comments->have()): ?>
|
||||
<?php if($this->allow('comment')): ?>
|
||||
<h3 class="mdui-valign"><i class="mdui-icon material-icons">star_outline</i> 咱快来抢个沙发吧!</h3>
|
||||
<?php endif; ?>
|
||||
</hr>
|
||||
<?php endif; ?>
|
||||
|
||||
|
||||
<h3 class="mdui-valign">
|
||||
<i class="mdui-icon material-icons">star_outline</i> 咱快来抢个沙发吧!
|
||||
</h3>
|
||||
<?php endif; ?>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
|
@@ -9,12 +9,13 @@
|
||||
|
||||
* [Romanticism]
|
||||
* footer.php 页脚文件
|
||||
* @version 2.1 - 250202
|
||||
* @version 2.2 - 250710
|
||||
**/
|
||||
?>
|
||||
|
||||
<div class="mdui-shadow-0 mdui-text-center mdui-card toup">
|
||||
<br>
|
||||
|
||||
<br>
|
||||
<span class="title">
|
||||
©<?php echo date("Y"); ?> <?php $this->options->title(); ?>
|
||||
@@ -24,12 +25,11 @@
|
||||
echo $this->options->AKAROMfootericp; ?>
|
||||
</span><br>
|
||||
<?php else: ?>
|
||||
</span><br>
|
||||
<a href="https://beian.miit.gov.cn/" target="_blank" class="chameleon underline">渝ICP备2025062723号-1</a><br>
|
||||
</span>
|
||||
<?php endif;?>
|
||||
<br>
|
||||
<!-- 已经弄得很不显眼了,请不要删除以下信息 -->
|
||||
<small style="opacity: .5;">Theme <b><a class="chameleon underline" onclick="window.location.href='https://imakashi.eu.org/blog/archives/themeRomanticism.html'">Romanticism2.1</a></b> by <a class="chameleon underline" onclick="window.location.href='https://imakashi.eu.org/'"><b>Akashi</b></a>
|
||||
<small style="opacity: .2;">Theme <b><a class="chameleon underline" onclick="window.location.href='https://imakashi.eu.org/blog/archives/themeRomanticism.html'">Romanticism2.2</a></b> by <a class="chameleon underline" onclick="window.location.href='https://imakashi.eu.org/'"><b>Akashi</b></a>
|
||||
<br>
|
||||
Powered by <a class="chameleon underline" onclick="window.location.href='https://typecho.org'"><b>Typecho</b></a></small>
|
||||
<br><br>
|
||||
@@ -49,10 +49,10 @@
|
||||
<script src="<?php $this->options->themeUrl('config/mdui/js/mdui.min.js'); ?>"></script>
|
||||
<script src="<?php $this->options->themeUrl('config/js/jquery.min.js'); ?>"></script>
|
||||
|
||||
<script src="<?php $this->options->themeUrl('config/js/listLazyload.js?v=2.1'); ?>"></script>
|
||||
<script src="<?php $this->options->themeUrl('config/js/tagIcon.js?v=2.1'); ?>"></script>
|
||||
<script src="<?php $this->options->themeUrl('config/js/customStyle.js?v=2.1'); ?>"></script>
|
||||
<script src="<?php $this->options->themeUrl('config/js/returntop.js?v=2.1'); ?>"></script>
|
||||
<script src="<?php $this->options->themeUrl('config/js/listLazyload.js?v=2.2'); ?>"></script>
|
||||
<script src="<?php $this->options->themeUrl('config/js/tagIcon.js?v=2.2'); ?>"></script>
|
||||
<script src="<?php $this->options->themeUrl('config/js/customStyle.js?v=2.2'); ?>"></script>
|
||||
<script src="<?php $this->options->themeUrl('config/js/returntop.js?v=2.2'); ?>"></script>
|
||||
<script src="<?php $this->options->themeUrl('config/js/prism.highlight.js'); ?>"></script>
|
||||
|
||||
<script src="<?php $this->options->themeUrl('config/js/jquery.fancybox.min.js'); ?>"></script>
|
||||
@@ -63,80 +63,9 @@
|
||||
</script>
|
||||
|
||||
<?php if (!empty($this->options->AKAROMfucset) && in_array('AKAROMindexloading', $this->options->AKAROMfucset)): ?>
|
||||
<script type="text/javascript" src="<?php $this->options->themeUrl('config/js/loading.js?v=2.1'); ?>"></script>
|
||||
<script type="text/javascript" src="<?php $this->options->themeUrl('config/js/loading.js?v=2.2'); ?>"></script>
|
||||
<?php endif; ?>
|
||||
|
||||
<!-- 增强的懒加载脚本 -->
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
const lazyImages = [].slice.call(document.querySelectorAll("img.lazy, img[loading='lazy'], img.AKAROMlazyload"));
|
||||
|
||||
if ("IntersectionObserver" in window) {
|
||||
let lazyImageObserver = new IntersectionObserver(function(entries, observer) {
|
||||
entries.forEach(function(entry) {
|
||||
if (entry.isIntersecting) {
|
||||
let lazyImage = entry.target;
|
||||
if (lazyImage.dataset.src) {
|
||||
lazyImage.src = lazyImage.dataset.src;
|
||||
lazyImage.removeAttribute("data-src");
|
||||
}
|
||||
if (lazyImage.dataset.bg) {
|
||||
lazyImage.style.backgroundImage = "url('" + lazyImage.dataset.bg + "')";
|
||||
lazyImage.removeAttribute("data-bg");
|
||||
}
|
||||
lazyImage.classList.remove("lazy");
|
||||
lazyImage.classList.remove("AKAROMlazyload");
|
||||
lazyImageObserver.unobserve(lazyImage);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
lazyImages.forEach(function(lazyImage) {
|
||||
lazyImageObserver.observe(lazyImage);
|
||||
});
|
||||
} else {
|
||||
// 回退到传统的延迟加载
|
||||
let active = false;
|
||||
|
||||
const lazyLoad = function() {
|
||||
if (active === false) {
|
||||
active = true;
|
||||
|
||||
setTimeout(function() {
|
||||
lazyImages.forEach(function(lazyImage) {
|
||||
if ((lazyImage.getBoundingClientRect().top <= window.innerHeight && lazyImage.getBoundingClientRect().bottom >= 0) && getComputedStyle(lazyImage).display !== "none") {
|
||||
if (lazyImage.dataset.src) {
|
||||
lazyImage.src = lazyImage.dataset.src;
|
||||
lazyImage.removeAttribute("data-src");
|
||||
}
|
||||
if (lazyImage.dataset.bg) {
|
||||
lazyImage.style.backgroundImage = "url('" + lazyImage.dataset.bg + "')";
|
||||
lazyImage.removeAttribute("data-bg");
|
||||
}
|
||||
lazyImage.classList.remove("lazy");
|
||||
lazyImage.classList.remove("AKAROMlazyload");
|
||||
|
||||
if (lazyImages.length === 0) {
|
||||
document.removeEventListener("scroll", lazyLoad);
|
||||
window.removeEventListener("resize", lazyLoad);
|
||||
window.removeEventListener("orientationchange", lazyLoad);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
active = false;
|
||||
}, 200);
|
||||
}
|
||||
};
|
||||
|
||||
document.addEventListener("scroll", lazyLoad);
|
||||
window.addEventListener("resize", lazyLoad);
|
||||
window.addEventListener("orientationchange", lazyLoad);
|
||||
lazyLoad();
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<script src="<?php $this->options->themeUrl('config/js/OwO.js'); ?>"></script>
|
||||
<script>
|
||||
function OwO_show() {
|
||||
@@ -148,6 +77,9 @@
|
||||
}
|
||||
</script>
|
||||
|
||||
<script src="<?php $this->options->themeUrl('config/js/md5.min.js'); ?>"></script>
|
||||
<script src="<?php $this->options->themeUrl('config/js/preheadicon.js?v=2.2'); ?>"></script>
|
||||
|
||||
<!-- 自定义JS -->
|
||||
<?php if(!empty($this->options->AKAROMcustomJs)): ?>
|
||||
<script type="text/javascript">
|
||||
|
@@ -9,14 +9,13 @@
|
||||
|
||||
* [Romanticism]
|
||||
* header.php 页首文件
|
||||
* @version 2.1
|
||||
* @version 2.2
|
||||
* @link https://imakashi.eu.org/
|
||||
**/
|
||||
?>
|
||||
|
||||
<?php if (!defined('__TYPECHO_ROOT_DIR__')) exit;
|
||||
// 仅抑制通知和不重要的警告,保留重要错误
|
||||
error_reporting(E_ERROR | E_PARSE | E_CORE_ERROR | E_COMPILE_ERROR | E_USER_ERROR);
|
||||
error_reporting(0);
|
||||
?>
|
||||
|
||||
<!DOCTYPE HTML>
|
||||
@@ -30,31 +29,14 @@ error_reporting(E_ERROR | E_PARSE | E_CORE_ERROR | E_COMPILE_ERROR | E_USER_ERRO
|
||||
|
||||
<meta name="copyright" content="Copyright(C)<?php echo date('Y');?> <?php $this->options->title() ?>"/>
|
||||
<meta name="author" content="<?php $this->author(); ?>"/>
|
||||
<!-- SEO优化标签 -->
|
||||
<?php if($this->is('index')): ?>
|
||||
<meta name="description" content="<?php $this->options->description() ?>" />
|
||||
<meta name="keywords" content="<?php $this->options->keywords() ?>" />
|
||||
<?php elseif($this->is('post') || $this->is('page')): ?>
|
||||
<meta name="description" content="<?php $this->description(); ?>" />
|
||||
<meta name="keywords" content="<?php $this->keywords(', '); ?>" />
|
||||
<?php endif; ?>
|
||||
<?php if($this->is('post')): ?>
|
||||
<meta property="og:title" content="<?php $this->title() ?>" />
|
||||
<meta property="og:description" content="<?php $this->description(); ?>" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:url" content="<?php $this->permalink() ?>" />
|
||||
<?php endif; ?>
|
||||
<meta name="TypechoTemplateInfo" content="Creator: Akashi Nishikata; Link: imakashi.eu.org; Release: 2025-02">
|
||||
<meta name="TypechoTemplateInfo" content="Creator: Akashi Nishikata; Link: imakashi.eu.org; Release: 2025-08">
|
||||
|
||||
<!-- 通过自有函数输出HTML头部信息 -->
|
||||
<?php $this->header(); ?>
|
||||
|
||||
<link href="<?php $this->options->AKAROMsign(); ?>" rel="icon" type="image/x-icon"><!--图标-->
|
||||
|
||||
<!-- 使用更可靠的字体CDN并添加预加载 -->
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;900&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.loli.net/css2?family=Noto+Serif+SC:wght@400;900&display=swap" rel="stylesheet">
|
||||
|
||||
<title><?php $this->archiveTitle(array(
|
||||
'category' => _t('分类 %s 下的文章'),
|
||||
@@ -65,20 +47,11 @@ error_reporting(E_ERROR | E_PARSE | E_CORE_ERROR | E_COMPILE_ERROR | E_USER_ERRO
|
||||
|
||||
<!-- 使用url函数转换相关路径 -->
|
||||
<link rel="stylesheet" href="<?php $this->options->themeUrl('config/mdui/css/mdui.min.css'); ?>">
|
||||
<link rel="stylesheet" href="<?php $this->options->themeUrl('config/style/romanticism.aka.css?v=2.1'); ?>">
|
||||
<!-- 延迟加载非关键CSS -->
|
||||
<link rel="preload" href="<?php $this->options->themeUrl('config/style/prism.highlight.css'); ?>" as="style" onload="this.onload=null;this.rel='stylesheet'">
|
||||
<noscript><link rel="stylesheet" href="<?php $this->options->themeUrl('config/style/prism.highlight.css'); ?>"></noscript>
|
||||
<link rel="preload" href="<?php $this->options->themeUrl('config/style/jquery.fancybox.css'); ?>" as="style" onload="this.onload=null;this.rel='stylesheet'">
|
||||
<noscript><link rel="stylesheet" href="<?php $this->options->themeUrl('config/style/jquery.fancybox.css'); ?>"></noscript>
|
||||
<link rel="stylesheet" href="<?php $this->options->themeUrl('config/style/romanticism.aka.css?v=2.2'); ?>">
|
||||
<link rel="stylesheet" href="<?php $this->options->themeUrl('config/style/prism.highlight.css'); ?>">
|
||||
<link rel="stylesheet" href="<?php $this->options->themeUrl('config/style/jquery.fancybox.css'); ?>">
|
||||
<link rel="stylesheet" href="<?php $this->options->themeUrl('config/style/icon.aka.css'); ?>">
|
||||
<link rel="preload" href="<?php $this->options->themeUrl('config/style/OwO.css'); ?>" as="style" onload="this.onload=null;this.rel='stylesheet'">
|
||||
<noscript><link rel="stylesheet" href="<?php $this->options->themeUrl('config/style/OwO.css'); ?>"></noscript>
|
||||
|
||||
<!-- CSS加载回退脚本 -->
|
||||
<script>
|
||||
!function(n){"use strict";n.loadCSS||(n.loadCSS=function(){});var o=loadCSS.relpreload={};if(o.support=function(){var e;try{e=n.document.createElement("link").relList.supports("preload")}catch(t){e=!1}return function(){return e}}(),o.bindMediaToggle=function(t){var e=t.media||"all";function a(){t.media=e}t.addEventListener?t.addEventListener("load",a):t.attachEvent&&t.attachEvent("onload",a),setTimeout(function(){t.rel="stylesheet",t.media="only x"}),setTimeout(a,3e3)},o.poly=function(){if(!o.support())for(var t=n.document.getElementsByTagName("link"),e=0;e<t.length;e++){var a=t[e];"preload"!==a.rel||"style"!==a.getAttribute("as")||a.getAttribute("data-loadcss")||(a.setAttribute("data-loadcss",!0),o.bindMediaToggle(a))}},!o.support()){o.poly();var t=n.setInterval(o.poly,500);n.addEventListener?n.addEventListener("load",function(){o.poly(),n.clearInterval(t)}):n.attachEvent&&n.attachEvent("onload",function(){o.poly(),n.clearInterval(t)})}"undefined"!=typeof exports?exports.loadCSS=loadCSS:n.loadCSS=loadCSS}("undefined"!=typeof global?global:this);
|
||||
</script>
|
||||
<link rel="stylesheet" href="<?php $this->options->themeUrl('config/style/OwO.css'); ?>">
|
||||
|
||||
<!-- 自定义CSS -->
|
||||
<?php if(!empty($this->options->AKAROMcustomCss)): ?>
|
||||
@@ -88,8 +61,8 @@ error_reporting(E_ERROR | E_PARSE | E_CORE_ERROR | E_COMPILE_ERROR | E_USER_ERRO
|
||||
<?php endif; ?>
|
||||
|
||||
</head>
|
||||
<!--[if lte IE 10]>
|
||||
<div class="browsehappy" role="dialog">您正在使用<strong>过时的</strong>浏览器. 为了更好的体验, 请 <a href="https://browsehappy.com/">升级你的浏览器</a>.</div>
|
||||
<!--[if IE 9]>
|
||||
<div style="z-index:99999;position:fixed;background-color:white;height:100vh;width:100vw;padding-top:40vh;padding-left:15vw;padding-right:15vw;font-size:23px;word-wrap:break-word;">当前网页 <strong>不支持</strong> 你的浏览器<br><br>请 <a href="https://browsehappy.com/" style="color:rgb(233,100,100);">升级浏览器</a></div>
|
||||
<![endif]-->
|
||||
|
||||
<body class="mdui-theme-layout-light mdui-theme-primary-blue mdui-theme-accent-red">
|
||||
@@ -111,7 +84,7 @@ error_reporting(E_ERROR | E_PARSE | E_CORE_ERROR | E_COMPILE_ERROR | E_USER_ERRO
|
||||
<a class="mdui-hidden-xs-down"></a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mdui-dialog yuan blur" id="search">
|
||||
<div class="mdui-dialog yuan blur mdui-shadow-0" id="search">
|
||||
<div class="mdui-container">
|
||||
<div class="mdui-typo">
|
||||
<h3 class="mdui-valign"><i class="mdui-icon material-icons">search</i> 搜索一下</h3>
|
||||
|
@@ -1,31 +1,56 @@
|
||||
//Loading页面
|
||||
document.onreadystatechange = function () {
|
||||
if (document.readyState == "complete") {
|
||||
loadingFade();
|
||||
}
|
||||
if (document.readyState == "complete") {
|
||||
loadingFade();
|
||||
}
|
||||
}
|
||||
|
||||
// 添加计时器,若加载时间过长,显示取消按钮
|
||||
let loadingTimer;
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
const cancelBtn = document.getElementById('cancelLoadingBtn');
|
||||
if (cancelBtn) {
|
||||
// 3秒后显示取消按钮
|
||||
loadingTimer = setTimeout(function() {
|
||||
cancelBtn.style.opacity = '0.6';
|
||||
cancelBtn.style.filter = 'blur(0)';
|
||||
}, 3000);
|
||||
|
||||
// 添加点击事件
|
||||
cancelBtn.addEventListener('click', function() {
|
||||
loadingFade();
|
||||
clearTimeout(loadingTimer);
|
||||
mdui.snackbar({
|
||||
message: '资源将在后台加载 ...',
|
||||
position: 'right-bottom',
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
function loadingFade() {
|
||||
var opacity = 1;
|
||||
var fadeSpeed = 0.05; // 渐变速度
|
||||
var loadingBackground = document.getElementById('loading_bg');
|
||||
var loadingBox = document.getElementById('loading');
|
||||
|
||||
if (!loadingBackground || !loadingBox) {
|
||||
return;
|
||||
var opacity = 1;
|
||||
var fadeSpeed = 0.05; // 渐变速度
|
||||
var loadingBackground = document.getElementById('loading_bg');
|
||||
var loadingBox = document.getElementById('loading');
|
||||
|
||||
if (!loadingBackground || !loadingBox) {
|
||||
return;
|
||||
}
|
||||
|
||||
// 清除计时器
|
||||
clearTimeout(loadingTimer);
|
||||
|
||||
function fade() {
|
||||
if (opacity <= 0) {
|
||||
$('#loading').remove();
|
||||
return;
|
||||
}
|
||||
|
||||
function fade() {
|
||||
if (opacity <= 0) {
|
||||
$('#loading').remove();
|
||||
return;
|
||||
}
|
||||
|
||||
loadingBackground.style.opacity = opacity;
|
||||
loadingBox.style.opacity = opacity;
|
||||
opacity -= fadeSpeed;
|
||||
requestAnimationFrame(fade); // 使用requestAnimationFrame来提高动画性能
|
||||
}
|
||||
|
||||
fade();
|
||||
}
|
||||
loadingBackground.style.opacity = opacity;
|
||||
loadingBox.style.opacity = opacity;
|
||||
opacity -= fadeSpeed;
|
||||
requestAnimationFrame(fade); // 使用requestAnimationFrame来提高动画性能
|
||||
}
|
||||
|
||||
fade();
|
||||
}
|
2
config/js/md5.min.js
vendored
Normal file
2
config/js/md5.min.js
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
!function(n){"use strict";function d(n,t){var r=(65535&n)+(65535&t);return(n>>16)+(t>>16)+(r>>16)<<16|65535&r}function f(n,t,r,e,o,u){return d((u=d(d(t,n),d(e,u)))<<o|u>>>32-o,r)}function l(n,t,r,e,o,u,c){return f(t&r|~t&e,n,t,o,u,c)}function g(n,t,r,e,o,u,c){return f(t&e|r&~e,n,t,o,u,c)}function v(n,t,r,e,o,u,c){return f(t^r^e,n,t,o,u,c)}function m(n,t,r,e,o,u,c){return f(r^(t|~e),n,t,o,u,c)}function c(n,t){var r,e,o,u;n[t>>5]|=128<<t%32,n[14+(t+64>>>9<<4)]=t;for(var c=1732584193,f=-271733879,i=-1732584194,a=271733878,h=0;h<n.length;h+=16)c=l(r=c,e=f,o=i,u=a,n[h],7,-680876936),a=l(a,c,f,i,n[h+1],12,-389564586),i=l(i,a,c,f,n[h+2],17,606105819),f=l(f,i,a,c,n[h+3],22,-1044525330),c=l(c,f,i,a,n[h+4],7,-176418897),a=l(a,c,f,i,n[h+5],12,1200080426),i=l(i,a,c,f,n[h+6],17,-1473231341),f=l(f,i,a,c,n[h+7],22,-45705983),c=l(c,f,i,a,n[h+8],7,1770035416),a=l(a,c,f,i,n[h+9],12,-1958414417),i=l(i,a,c,f,n[h+10],17,-42063),f=l(f,i,a,c,n[h+11],22,-1990404162),c=l(c,f,i,a,n[h+12],7,1804603682),a=l(a,c,f,i,n[h+13],12,-40341101),i=l(i,a,c,f,n[h+14],17,-1502002290),c=g(c,f=l(f,i,a,c,n[h+15],22,1236535329),i,a,n[h+1],5,-165796510),a=g(a,c,f,i,n[h+6],9,-1069501632),i=g(i,a,c,f,n[h+11],14,643717713),f=g(f,i,a,c,n[h],20,-373897302),c=g(c,f,i,a,n[h+5],5,-701558691),a=g(a,c,f,i,n[h+10],9,38016083),i=g(i,a,c,f,n[h+15],14,-660478335),f=g(f,i,a,c,n[h+4],20,-405537848),c=g(c,f,i,a,n[h+9],5,568446438),a=g(a,c,f,i,n[h+14],9,-1019803690),i=g(i,a,c,f,n[h+3],14,-187363961),f=g(f,i,a,c,n[h+8],20,1163531501),c=g(c,f,i,a,n[h+13],5,-1444681467),a=g(a,c,f,i,n[h+2],9,-51403784),i=g(i,a,c,f,n[h+7],14,1735328473),c=v(c,f=g(f,i,a,c,n[h+12],20,-1926607734),i,a,n[h+5],4,-378558),a=v(a,c,f,i,n[h+8],11,-2022574463),i=v(i,a,c,f,n[h+11],16,1839030562),f=v(f,i,a,c,n[h+14],23,-35309556),c=v(c,f,i,a,n[h+1],4,-1530992060),a=v(a,c,f,i,n[h+4],11,1272893353),i=v(i,a,c,f,n[h+7],16,-155497632),f=v(f,i,a,c,n[h+10],23,-1094730640),c=v(c,f,i,a,n[h+13],4,681279174),a=v(a,c,f,i,n[h],11,-358537222),i=v(i,a,c,f,n[h+3],16,-722521979),f=v(f,i,a,c,n[h+6],23,76029189),c=v(c,f,i,a,n[h+9],4,-640364487),a=v(a,c,f,i,n[h+12],11,-421815835),i=v(i,a,c,f,n[h+15],16,530742520),c=m(c,f=v(f,i,a,c,n[h+2],23,-995338651),i,a,n[h],6,-198630844),a=m(a,c,f,i,n[h+7],10,1126891415),i=m(i,a,c,f,n[h+14],15,-1416354905),f=m(f,i,a,c,n[h+5],21,-57434055),c=m(c,f,i,a,n[h+12],6,1700485571),a=m(a,c,f,i,n[h+3],10,-1894986606),i=m(i,a,c,f,n[h+10],15,-1051523),f=m(f,i,a,c,n[h+1],21,-2054922799),c=m(c,f,i,a,n[h+8],6,1873313359),a=m(a,c,f,i,n[h+15],10,-30611744),i=m(i,a,c,f,n[h+6],15,-1560198380),f=m(f,i,a,c,n[h+13],21,1309151649),c=m(c,f,i,a,n[h+4],6,-145523070),a=m(a,c,f,i,n[h+11],10,-1120210379),i=m(i,a,c,f,n[h+2],15,718787259),f=m(f,i,a,c,n[h+9],21,-343485551),c=d(c,r),f=d(f,e),i=d(i,o),a=d(a,u);return[c,f,i,a]}function i(n){for(var t="",r=32*n.length,e=0;e<r;e+=8)t+=String.fromCharCode(n[e>>5]>>>e%32&255);return t}function a(n){var t=[];for(t[(n.length>>2)-1]=void 0,e=0;e<t.length;e+=1)t[e]=0;for(var r=8*n.length,e=0;e<r;e+=8)t[e>>5]|=(255&n.charCodeAt(e/8))<<e%32;return t}function e(n){for(var t,r="0123456789abcdef",e="",o=0;o<n.length;o+=1)t=n.charCodeAt(o),e+=r.charAt(t>>>4&15)+r.charAt(15&t);return e}function r(n){return unescape(encodeURIComponent(n))}function o(n){return i(c(a(n=r(n)),8*n.length))}function u(n,t){return function(n,t){var r,e=a(n),o=[],u=[];for(o[15]=u[15]=void 0,16<e.length&&(e=c(e,8*n.length)),r=0;r<16;r+=1)o[r]=909522486^e[r],u[r]=1549556828^e[r];return t=c(o.concat(a(t)),512+8*t.length),i(c(u.concat(t),640))}(r(n),r(t))}function t(n,t,r){return t?r?u(t,n):e(u(t,n)):r?o(n):e(o(n))}"function"==typeof define&&define.amd?define(function(){return t}):"object"==typeof module&&module.exports?module.exports=t:n.md5=t}(this);
|
||||
//# sourceMappingURL=md5.min.js.map
|
18
config/js/preheadicon.js
Normal file
18
config/js/preheadicon.js
Normal file
@@ -0,0 +1,18 @@
|
||||
$(document).ready(function() {
|
||||
function updateAvatar() {
|
||||
let $mail = $('#mail');
|
||||
let $avatar = $('#preheadicon');
|
||||
|
||||
if ($mail.length && $avatar.length) {
|
||||
let email = $mail.val().trim().toLowerCase();
|
||||
if (email) {
|
||||
let hash = md5(email);
|
||||
$avatar.attr('src', `https://cravatar.cn/avatar/${hash}.png`);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
updateAvatar(); // 确保页面加载后执行一次
|
||||
|
||||
$('#mail').on('blur', updateAvatar);
|
||||
});
|
@@ -6,7 +6,7 @@ var scrolltotop={
|
||||
|
||||
setting: {startline:100, scrollto: 0, scrollduration:1000, fadeduration:[500, 100]},
|
||||
|
||||
controlHTML: '<button class="mdui-shadow-1 blur mdui-shadow-0 mdui-fab-fixed mdui-fab mdui-fab-mini"><i class="mdui-icon material-icons">keyboard_arrow_up</i></button>',
|
||||
controlHTML: '<button style="border: 1px solid rgba(128, 128, 128, 0.2);" class="mdui-shadow-0 blur mdui-shadow-0 mdui-fab-fixed mdui-fab mdui-fab-mini"><i style="margin-left: 7px;" class="mdui-icon material-icons">keyboard_arrow_up</i></button>',
|
||||
|
||||
controlattrs: {offsetx:30, offsety:30}, //offset of control relative to right/ bottom of window corner
|
||||
|
||||
|
13559
config/mdui/css/mdui.css
Normal file
13559
config/mdui/css/mdui.css
Normal file
File diff suppressed because it is too large
Load Diff
1
config/mdui/css/mdui.css.map
Normal file
1
config/mdui/css/mdui.css.map
Normal file
File diff suppressed because one or more lines are too long
1
config/mdui/css/mdui.min.css.map
Normal file
1
config/mdui/css/mdui.min.css.map
Normal file
File diff suppressed because one or more lines are too long
5976
config/mdui/js/mdui.esm.js
Normal file
5976
config/mdui/js/mdui.esm.js
Normal file
File diff suppressed because it is too large
Load Diff
1
config/mdui/js/mdui.esm.js.map
Normal file
1
config/mdui/js/mdui.esm.js.map
Normal file
File diff suppressed because one or more lines are too long
6474
config/mdui/js/mdui.js
Normal file
6474
config/mdui/js/mdui.js
Normal file
File diff suppressed because it is too large
Load Diff
1
config/mdui/js/mdui.js.map
Normal file
1
config/mdui/js/mdui.js.map
Normal file
File diff suppressed because one or more lines are too long
1
config/mdui/js/mdui.min.js.map
Normal file
1
config/mdui/js/mdui.min.js.map
Normal file
File diff suppressed because one or more lines are too long
@@ -9,7 +9,7 @@
|
||||
|
||||
* [Romanticism]
|
||||
* sidebar.php 边栏菜单文件
|
||||
* @version 2.1
|
||||
* @version 2.2
|
||||
**/
|
||||
?>
|
||||
|
||||
@@ -21,9 +21,7 @@
|
||||
<div class="mdui-grid-tile sidebarimg" style="background-image: url('<?php if(empty($this->options->AKAROMsidebarimg)): ?><?php $this->options->themeUrl('config/style/img/default/sidebar.webp'); ?><?php else: ?><?php $this->options->AKAROMsidebarimg(); ?><?php endif; ?>');">
|
||||
<img class="headicon" onclick="window.location.href='<?php $this->options ->siteUrl('/admin'); ?>'" title="headicon" src="<?php if(empty($this->options->AKAROMlogoUrl)): ?><?php $this->options->themeUrl('config/style/img/default/user.jpg'); ?><?php else: ?><?php $this->options->AKAROMlogoUrl(); ?><?php endif; ?>">
|
||||
<div class="mdui-grid-tile-actions">
|
||||
<h3 class="easysee chameleon">
|
||||
<?php $this->options->title(); ?>
|
||||
</h3>
|
||||
<h3 class="easysee chameleon" style="white-space:pre-wrap;"><?php $this->options->title(); ?></h3>
|
||||
<br>
|
||||
<br>
|
||||
</div>
|
||||
@@ -48,12 +46,18 @@
|
||||
<?php $this->widget('Widget_Metas_Category_List')->to($category); ?>
|
||||
<?php while ($category->next()): ?>
|
||||
<a href="<?php $category->permalink(); ?>" class="btnyuan mdui-list-item">
|
||||
<div class="mdui-list-item-content"><?php $category->name(); ?></div>
|
||||
<b><?php $category->count(); ?></b>
|
||||
<div class="mdui-list-item-content" style="white-space: normal;padding-right:10px;">
|
||||
<?php if ($category->parent != 0): ?>└<?php endif; ?><?php $category->name(); ?>
|
||||
</div>
|
||||
<b>
|
||||
|
||||
<?php $category->count(); ?>
|
||||
</b>
|
||||
</a>
|
||||
<?php endwhile; ?>
|
||||
<div class="mdui-typo"><hr></div>
|
||||
</div>
|
||||
<div class="mdui-typo"><hr></div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="mdui-list">
|
||||
|
||||
@@ -77,3 +81,6 @@
|
||||
|
||||
</div>
|
||||
</div><!--Sidebar End-->
|
||||
|
||||
|
||||
|
||||
|
BIN
config/style/img/default/romanticism2-old.png
Normal file
BIN
config/style/img/default/romanticism2-old.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.9 MiB |
1
config/style/img/icon/github-mark.svg
Normal file
1
config/style/img/icon/github-mark.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg width="98" height="96" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z" fill="#24292f"/></svg>
|
After Width: | Height: | Size: 963 B |
@@ -8,17 +8,19 @@
|
||||
|
||||
* [Romanticism]
|
||||
* romanticism.aka.css 主样式表文件
|
||||
* @version 2.1
|
||||
* @version 2.2
|
||||
* @link https://imakashi.eu.org/
|
||||
**/
|
||||
|
||||
html{
|
||||
scroll-behavior: auto;
|
||||
scroll-padding-top: 100px;
|
||||
}
|
||||
body{
|
||||
font-family: 'Noto Serif SC', serif;
|
||||
font-weight:400;
|
||||
font-display: swap;
|
||||
}
|
||||
html::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.mdui-theme-layout-light .LDtrans{
|
||||
background-color: Seashell;
|
||||
@@ -36,14 +38,18 @@ html::-webkit-scrollbar {
|
||||
|
||||
/*高斯模糊效果*/
|
||||
.blur{
|
||||
backdrop-filter: saturate(180%) blur(15px);
|
||||
-webkit-backdrop-filter: saturate(180%) blur(15px);
|
||||
backdrop-filter: saturate(150%) blur(5px);
|
||||
-webkit-backdrop-filter: saturate(150%) blur(5px);
|
||||
}
|
||||
.loadingbg.blur{
|
||||
backdrop-filter: saturate(160%) blur(15px);
|
||||
-webkit-backdrop-filter: saturate(160%) blur(15px);
|
||||
}
|
||||
.mdui-theme-layout-light .blur{
|
||||
background: rgba(255, 255, 255, 0.72);
|
||||
background: rgba(255, 255, 255, 0.52);
|
||||
}
|
||||
.mdui-theme-layout-dark .blur{
|
||||
background: rgba(58, 58, 58, 0.72);
|
||||
background: rgba(58, 58, 58, 0.52);
|
||||
}
|
||||
.mdui-overlay{
|
||||
backdrop-filter: saturate(100%) blur(20px);
|
||||
@@ -52,7 +58,7 @@ html::-webkit-scrollbar {
|
||||
.mdui-tooltip, .mdui-snackbar{
|
||||
backdrop-filter: saturate(180%) blur(15px);
|
||||
-webkit-backdrop-filter: saturate(180%) blur(15px);
|
||||
box-shadow: 0 0 2px black;
|
||||
border: 1px solid rgba(128, 128, 128, 0.2);
|
||||
}
|
||||
.mdui-theme-layout-light .mdui-tooltip{
|
||||
background: rgba(255, 255, 255, 0.72);
|
||||
@@ -73,6 +79,10 @@ html::-webkit-scrollbar {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.mdui-dialog{
|
||||
border: 1px solid rgba(128, 128, 128, 0.2);
|
||||
}
|
||||
|
||||
/*加载动画*/
|
||||
#loading {
|
||||
width: 100%;
|
||||
@@ -107,6 +117,60 @@ html::-webkit-scrollbar {
|
||||
height: 50px;
|
||||
}
|
||||
|
||||
/*
|
||||
Fonts in loading
|
||||
Author:Naoya | @nxworld
|
||||
Link:
|
||||
https://codepen.io/nxworld/pen/zwGpXr
|
||||
*/
|
||||
|
||||
.loadingtx span {
|
||||
display: inline-block;
|
||||
margin: 0 -0.09em;
|
||||
font-weight: bold;
|
||||
}
|
||||
.loading-text span {
|
||||
animation: loading02 1s infinite alternate;
|
||||
}
|
||||
|
||||
.loading-text span:nth-child(1) {
|
||||
animation-delay: 0.2s;
|
||||
}
|
||||
|
||||
.loading-text span:nth-child(2) {
|
||||
animation-delay: 0.4s;
|
||||
}
|
||||
|
||||
.loading-text span:nth-child(3) {
|
||||
animation-delay: 0.6s;
|
||||
}
|
||||
|
||||
.loading-text span:nth-child(4) {
|
||||
animation-delay: 0.8s;
|
||||
}
|
||||
|
||||
.loading-text span:nth-child(5) {
|
||||
animation-delay: 1s;
|
||||
}
|
||||
|
||||
.loading-text span:nth-child(6) {
|
||||
animation-delay: 1.2s;
|
||||
}
|
||||
|
||||
@keyframes loading02 {
|
||||
0% {
|
||||
filter: blur(0);
|
||||
opacity: 1;
|
||||
}
|
||||
100% {
|
||||
filter: blur(2px);
|
||||
opacity: .3;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/*圆角设置*/
|
||||
.yuan, .mdui-snackbar{
|
||||
border-radius: 14px;
|
||||
@@ -117,13 +181,16 @@ html::-webkit-scrollbar {
|
||||
.mdui-tooltip{
|
||||
border-radius: 8px;
|
||||
}
|
||||
@media(max-width:420px){
|
||||
.yuan, .mdui-snackbar{
|
||||
@media(max-width:450px){
|
||||
.yuan{
|
||||
border-radius: 10px;
|
||||
}
|
||||
.btnyuan{
|
||||
border-radius: 6px;
|
||||
}
|
||||
.mdui-snackbar{
|
||||
border-radius: 0px;
|
||||
}
|
||||
.mdui-tooltip{
|
||||
border-radius: 8px;
|
||||
}
|
||||
@@ -178,13 +245,19 @@ html::-webkit-scrollbar {
|
||||
background: rgba(128, 128, 128, 0.3);
|
||||
border-radius: 5px;
|
||||
}
|
||||
.sticky-item {
|
||||
.sticky-item{
|
||||
display: inline-block;
|
||||
width: 320px;
|
||||
height: 100%;
|
||||
margin-right: 8px;
|
||||
background-color: #f0f0f0;
|
||||
text-align: center;
|
||||
transition: all 0.5s ease;
|
||||
border: 0.01px solid rgba(128,128,128,.3);
|
||||
}
|
||||
.sticky-item:hover{
|
||||
transform: scale(1.02);
|
||||
border-radius:12px;
|
||||
}
|
||||
.sticky-item .mdui-card-media-covered{
|
||||
display: flex;
|
||||
@@ -235,7 +308,7 @@ html::-webkit-scrollbar {
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
z-index: 99;
|
||||
|
||||
border: 1px solid rgba(128, 128, 128, 0.2);
|
||||
}
|
||||
.sticky-badge i{
|
||||
transform: rotate(-30deg);
|
||||
@@ -283,6 +356,7 @@ html::-webkit-scrollbar {
|
||||
padding-top: 15px;
|
||||
padding-bottom: 15px;
|
||||
line-height: 20px;
|
||||
border: 1px solid rgba(128, 128, 128, 0.8);
|
||||
}
|
||||
|
||||
|
||||
@@ -298,6 +372,12 @@ html::-webkit-scrollbar {
|
||||
background-size: cover;
|
||||
-webkit-background-size: cover;
|
||||
-o-background-size: cover;
|
||||
transition: all 0.5s ease;
|
||||
border: 0.01px solid rgba(128,128,128,.3);
|
||||
}
|
||||
.articlelistimg:hover{
|
||||
transform: scale(1.03);
|
||||
border-radius:24px;
|
||||
}
|
||||
.articlelistcard .mdui-card-primary-title{
|
||||
display: -webkit-box;
|
||||
@@ -311,10 +391,20 @@ html::-webkit-scrollbar {
|
||||
.articlelistcard .mdui-card-primary-title h4{
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
.articlesms{
|
||||
transition: all 0.5s ease;
|
||||
border: 0.1px solid rgba(128,128,128,.2);
|
||||
}
|
||||
.articlesms:hover{
|
||||
transform: scale(1.01);
|
||||
border: 0.1px solid rgba(128,128,128,.8);
|
||||
z-index:9;
|
||||
}
|
||||
.articlesms .mdui-card-content{
|
||||
margin-top: -20px;
|
||||
}
|
||||
.mdui-theme-layout-dark .articlesms img{
|
||||
.mdui-theme-layout-dark .articlesms .akarom-imgbox{
|
||||
filter: brightness(80%);
|
||||
}
|
||||
|
||||
@@ -375,18 +465,17 @@ a:hover{
|
||||
border: none;
|
||||
}
|
||||
.akarom-alter-button{
|
||||
border: 2px solid rgba(158, 158, 158, 0.3);
|
||||
border: 2px solid rgba(128, 128, 128, 0.2);
|
||||
padding:6px;
|
||||
transition: all 0.3s ease-in-out;
|
||||
transition: all 0.5s ease;
|
||||
background: none;
|
||||
padding-left: 10px;
|
||||
padding-right: 12px;
|
||||
}
|
||||
.akarom-alter-button:hover{
|
||||
filter: blur(2px);
|
||||
transform: scale(1.01);
|
||||
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3);
|
||||
transform: scale(1.1);
|
||||
position: relative;
|
||||
border-radius: 16px;
|
||||
}
|
||||
.akarom-alter-button-disabled{
|
||||
opacity: .5;
|
||||
@@ -518,9 +607,8 @@ p{
|
||||
background-color: CornflowerBlue;
|
||||
opacity: 0.5;
|
||||
transform: skew(-35deg);
|
||||
transition: opacity .2s ease-in-out;
|
||||
transition: all .2s ease;
|
||||
border-radius: 3px 8px 10px 6px;
|
||||
transition: 0.1s ease background-color;
|
||||
}
|
||||
.mdui-typo h3{
|
||||
font-weight:900;
|
||||
@@ -544,9 +632,8 @@ p{
|
||||
background-color: lightblue;
|
||||
opacity: 0.5;
|
||||
transform: skew(-35deg);
|
||||
transition: opacity .2s ease-in-out;
|
||||
transition: all .2s ease;
|
||||
border-radius: 3px 8px 10px 6px;
|
||||
transition: 0.1s ease background-color;
|
||||
}
|
||||
.mdui-typo h3{
|
||||
font-weight:900;
|
||||
@@ -587,7 +674,7 @@ p{
|
||||
padding-right:3px;
|
||||
margin-left: 8px;
|
||||
font-size: 13px;
|
||||
border: 3px solid rgba(136, 132, 132, 0.3);
|
||||
border: 2px solid rgba(128, 128, 128, 0.3);
|
||||
}
|
||||
#comments .comment-parent{
|
||||
margin-top: 30px;
|
||||
@@ -601,10 +688,16 @@ p{
|
||||
padding:10px;
|
||||
border-radius:10px;
|
||||
display:inline-block;
|
||||
border: 2px solid rgba(136, 132, 132, 0.199);
|
||||
border: 3px solid rgba(128,128,128,.3);
|
||||
line-height: 25px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
.outlineborder a{
|
||||
color: #252525 !important;
|
||||
}
|
||||
.mdui-theme-layout-dark .outlineborder a{
|
||||
color: #f0f0f0 !important;
|
||||
}
|
||||
|
||||
.link img{
|
||||
height:70%;
|
||||
@@ -631,6 +724,7 @@ p{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
cursor: pointer;
|
||||
border: 1px solid rgba(128, 128, 128, 0.2);
|
||||
}
|
||||
.akarom-articletag:hover{
|
||||
width:205px;
|
||||
@@ -673,9 +767,6 @@ p{
|
||||
left: 15px;
|
||||
}
|
||||
}
|
||||
.tagnotice{
|
||||
text-shadow: 0 0 3px #fff;
|
||||
}
|
||||
.taglist,
|
||||
.tagnotice{
|
||||
display: none;
|
||||
@@ -726,6 +817,116 @@ body:has(#filtersms:checked) .LDtrans .tagnotice-sms{
|
||||
margin: 0 auto;
|
||||
display: block;
|
||||
}
|
||||
.akarom-panel-menu{
|
||||
padding:16px;
|
||||
overflow: hidden;
|
||||
padding-left:24px;
|
||||
border: 1px solid rgba(128, 128, 128, 0.1);
|
||||
}
|
||||
.akarom-panel-menu h3{
|
||||
padding:0;
|
||||
margin-top:0;
|
||||
}
|
||||
.akarom-panel-menu ul{
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.akarom-panel-copy{
|
||||
padding:16px;
|
||||
overflow: hidden;
|
||||
border: 1px solid rgba(128, 128, 128, 0.1);
|
||||
}
|
||||
.akarom-corner-symbol-lb {
|
||||
position: absolute;
|
||||
bottom: -60px;
|
||||
left: -20px;
|
||||
font-weight: 600;
|
||||
font-size: 130px;
|
||||
transform: rotate(-15deg);
|
||||
opacity:.1;
|
||||
}
|
||||
.akarom-corner-symbol-rb {
|
||||
position: absolute;
|
||||
bottom: -60px;
|
||||
right: -10px;
|
||||
font-weight: 600;
|
||||
font-size: 130px;
|
||||
transform: rotate(-15deg);
|
||||
opacity:.1;
|
||||
}
|
||||
|
||||
.mdui-theme-layout-light .akarom-inverticon{
|
||||
filter: invert(0);
|
||||
}
|
||||
|
||||
.mdui-theme-layout-dark .akarom-inverticon {
|
||||
filter: invert(1) !important;
|
||||
}
|
||||
|
||||
.akarom-imgbox{
|
||||
transition: all 0.5s ease;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
border: 0.01px solid rgba(128,128,128,.3);
|
||||
}
|
||||
.akarom-imgbox:hover{
|
||||
transform: scale(1.01);
|
||||
z-index:9;
|
||||
}
|
||||
|
||||
.articlesms .akarom-imgbox:hover{
|
||||
transform: scale(1);
|
||||
z-index:9;
|
||||
}
|
||||
|
||||
.akarom-imgbox img {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
min-height: 100px;
|
||||
object-fit: cover;
|
||||
display: block;
|
||||
opacity: 0.2;
|
||||
transition: all .8s ease;
|
||||
filter: blur(10px);
|
||||
}
|
||||
|
||||
.akarom-imgbox img.loaded {
|
||||
filter: blur(0px);
|
||||
opacity: 1;
|
||||
z-index: 2;
|
||||
}
|
||||
.akarom-imgbox .center{
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
|
||||
.akarom-links{
|
||||
transition: all 0.5s ease;
|
||||
border: 0.01px solid rgba(128,128,128,.5);
|
||||
}
|
||||
.akarom-links:hover{
|
||||
transform: scale(1.05);
|
||||
border-radius:16px;
|
||||
z-index:9;
|
||||
}
|
||||
|
||||
.fancybox-bg{
|
||||
background: black !important;
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
.fancybox-image{
|
||||
border: 1px solid rgba(128,128,128,.6) !important;
|
||||
}
|
||||
|
||||
|
||||
.code-toolbar{
|
||||
margin-bottom: 32px;
|
||||
}
|
||||
|
||||
.code-toolbar .toolbar{
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
/*aplayer适配深色模式*/
|
||||
.mdui-theme-layout-light .aplayer{
|
||||
@@ -744,11 +945,11 @@ body:has(#filtersms:checked) .LDtrans .tagnotice-sms{
|
||||
.mdui-theme-layout-dark .aplayer-lrc::after{
|
||||
background: linear-gradient(rgba(235, 229, 229, 0) 0px, rgba(59, 59, 59, 0.8));
|
||||
}
|
||||
/*aplayer适配深色模式*/
|
||||
/*aplayer适配深色模式 END*/
|
||||
|
||||
/*musenxi livephoto*/
|
||||
.lpk-live-photo-player{
|
||||
border-radius:8px;
|
||||
overflow: hidden;
|
||||
}
|
||||
/*musenxi livephoto*/
|
||||
/*musenxi livephoto END*/
|
Reference in New Issue
Block a user