This commit is contained in:
杜恒 2021-01-19 17:56:21 +08:00
parent 779b87f8b3
commit ed3b56c2be
12 changed files with 217 additions and 4 deletions

View File

@ -0,0 +1 @@
.joe_header{position:-webkit-sticky;position:sticky;top:0;z-index:1000;background:var(--background);box-shadow:0 2px 10px 0 rgba(0,0,0,0.1)}.joe_header__above-logo{position:relative;display:flex;align-items:center;height:60px;padding-right:15px;margin-right:15px}.joe_header__above-logo img{max-width:150px;max-height:50px;-o-object-fit:cover;object-fit:cover}.joe_header__above-logo::after{content:'';position:absolute;top:50%;right:0;width:1px;height:20px;background:var(--classC);-webkit-transform:translateY(-50%);transform:translateY(-50%)}

View File

@ -0,0 +1,32 @@
.joe_header {
position: sticky;
top: 0;
z-index: 1000;
background: var(--background);
box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1);
&__above {
&-logo {
position: relative;
display: flex;
align-items: center;
height: 60px;
padding-right: 15px;
margin-right: 15px;
img {
max-width: 150px;
max-height: 50px;
object-fit: cover;
}
&::after {
content: '';
position: absolute;
top: 50%;
right: 0;
width: 1px;
height: 20px;
background: var(--classC);
transform: translateY(-50%);
}
}
}
}

View File

@ -0,0 +1 @@
*{margin:0;padding:0;box-sizing:border-box;outline:none;-webkit-tap-highlight-color:transparent}body{font-size:14px;background:#f5f5f5;font-family:'Helvetica Neue', Helvetica, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', '微软雅黑', Arial, sans-serif}input[type='text']{-webkit-appearance:none;border-radius:0;font-size:13px;font-weight:500}textarea{resize:none;-webkit-appearance:none}li{list-style:none}a{text-decoration:none}h1,h2,h3,h4,h5,h6{font-weight:500}img{border:0;vertical-align:middle}img[src=''],img:not([src]){border:0;opacity:0}svg,canvas{vertical-align:middle}button{cursor:pointer;-webkit-appearance:none;font-size:13px}table{border-collapse:collapse;border-spacing:0}.joe_container{display:flex;max-width:1140px;margin:0 auto;padding:0 15px}.joe_main{min-width:0;flex:1;padding:15px 0}@media (max-width: 1200px){.joe_container{max-width:960px}}@media (max-width: 992px){.joe_container{max-width:720px}}@media (max-width: 768px){.joe_container{max-width:540px}}@media (max-width: 576px){.joe_container{max-width:100%}}html{--background: #fff;--theme: #f24e4e;--main: #303133;--routine: #606266;--minor: #909399;--seat: #c0c4cc;--classA: #dcdfe6;--classB: #e4e7ed;--classC: #ebeef5;--classD: #f2f6fc;--text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);--box-shadow: 0px 0px 20px -5px rgba(158, 158, 158, 0.22)}html[dark='true']{--background: #303133;--box-shadow: none}

View File

@ -0,0 +1,128 @@
* {
margin: 0;
padding: 0;
box-sizing: border-box;
outline: none;
-webkit-tap-highlight-color: transparent;
}
body {
font-size: 14px;
background: #f5f5f5;
font-family: 'Helvetica Neue', Helvetica, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', '微软雅黑', Arial, sans-serif;
}
input[type='text'] {
-webkit-appearance: none;
border-radius: 0;
font-size: 13px;
font-weight: 500;
}
textarea {
resize: none;
-webkit-appearance: none;
}
li {
list-style: none;
}
a {
text-decoration: none;
}
h1,
h2,
h3,
h4,
h5,
h6 {
font-weight: 500;
}
img {
border: 0;
vertical-align: middle;
}
img[src=''],
img:not([src]) {
border: 0;
opacity: 0;
}
svg,
canvas {
vertical-align: middle;
}
button {
cursor: pointer;
-webkit-appearance: none;
font-size: 13px;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
.joe_container {
display: flex;
max-width: 1140px;
margin: 0 auto;
padding: 0 15px;
}
.joe_main {
min-width: 0;
flex: 1;
padding: 15px 0;
}
@media (max-width: 1200px) {
.joe_container {
max-width: 960px;
}
}
@media (max-width: 992px) {
.joe_container {
max-width: 720px;
}
}
@media (max-width: 768px) {
.joe_container {
max-width: 540px;
}
}
@media (max-width: 576px) {
.joe_container {
max-width: 100%;
}
}
html {
--background: #fff;
--theme: #f24e4e;
--main: #303133;
--routine: #606266;
--minor: #909399;
--seat: #c0c4cc;
--classA: #dcdfe6;
--classB: #e4e7ed;
--classC: #ebeef5;
--classD: #f2f6fc;
--text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
--box-shadow: 0px 0px 20px -5px rgba(158, 158, 158, 0.22);
}
html[dark='true'] {
--background: #303133;
--box-shadow: none;
}

BIN
assets/img/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

View File

@ -9,10 +9,8 @@ document.addEventListener("DOMContentLoaded", function () {
_item.classList.remove("active"); _item.classList.remove("active");
}); });
item.classList.add("active"); item.classList.add("active");
let current = item.getAttribute("data-current"); let current = item.getAttribute("data-current");
sessionStorage.setItem("joe_config_current", current); sessionStorage.setItem("joe_config_current", current);
if (current === "joe_notice") { if (current === "joe_notice") {
Notice.style.display = "block"; Notice.style.display = "block";
Form.style.display = "none"; Form.style.display = "none";
@ -20,7 +18,6 @@ document.addEventListener("DOMContentLoaded", function () {
Notice.style.display = "none"; Notice.style.display = "none";
Form.style.display = "block"; Form.style.display = "block";
} }
Content.forEach(function (_item) { Content.forEach(function (_item) {
_item.style.display = "none"; _item.style.display = "none";
let flag = _item.classList.contains(current); let flag = _item.classList.contains(current);

1
assets/js/joe.global.js Normal file
View File

@ -0,0 +1 @@
document.addEventListener('DOMContentLoaded', function () {});

View File

@ -38,7 +38,7 @@ function themeConfig($form)
$JFavicon = new Typecho_Widget_Helper_Form_Element_Textarea( $JFavicon = new Typecho_Widget_Helper_Form_Element_Textarea(
'JFavicon', 'JFavicon',
NULL, NULL,
"https://cdn.jsdelivr.net/gh/HaoOuBa/Joe@master/assets/img/favicon.ico", 'https://cdn.jsdelivr.net/gh/HaoOuBa/Joe@master/assets/img/favicon.ico',
'网站 Favicon 设置(非必填)', '网站 Favicon 设置(非必填)',
'介绍:用于设置网站 Favicon一个好的 Favicon 可以给用户一种很专业的观感 <br /> '介绍:用于设置网站 Favicon一个好的 Favicon 可以给用户一种很专业的观感 <br />
格式:图片 URL地址 Base64 地址 <br /> 格式:图片 URL地址 Base64 地址 <br />
@ -46,4 +46,16 @@ function themeConfig($form)
); );
$JFavicon->setAttribute('class', 'joe_content joe_image'); $JFavicon->setAttribute('class', 'joe_content joe_image');
$form->addInput($JFavicon); $form->addInput($JFavicon);
$JLogo = new Typecho_Widget_Helper_Form_Element_Textarea(
'JLogo',
NULL,
'https://cdn.jsdelivr.net/gh/HaoOuBa/Joe@master/assets/img/logo.png',
'网站 Logo 设置(非必填)',
'介绍:用于设置网站 Logo一个好的 Logo 能为网站带来有效的流量 <br />
格式:图片 URL地址 Base64 地址 <br />
其他:免费制作 logo 网站 <a target="_blank" href="//www.uugai.com">www.uugai.com</a>'
);
$JLogo->setAttribute('class', 'joe_content joe_image');
$form->addInput($JLogo);
} ?> } ?>

View File

@ -6,3 +6,22 @@
* @author Joe * @author Joe
* @link https://ae.js.cn * @link https://ae.js.cn
*/ */
?>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<?php $this->need('public/include.php'); ?>
</head>
<body>
<div id="Joe">
<?php $this->need('public/header.php'); ?>
<?php $this->need('public/footer.php'); ?>
</div>
</body>
</html>

0
public/footer.php Normal file
View File

11
public/header.php Normal file
View File

@ -0,0 +1,11 @@
<header class="joe_header">
<!-- Header Above -->
<div class="joe_header__above">
<div class="joe_container">
<a class="joe_header__above-logo" href="<?php $this->options->siteUrl(); ?>">
<img src="<?php $this->options->JLogo() ?>" alt="<?php $this->options->title(); ?>" />
</a>
</div>
</div>
</header>

11
public/include.php Normal file
View File

@ -0,0 +1,11 @@
<meta charset="utf-8" />
<meta name="renderer" content="webkit" />
<meta http-equiv="Cache-Control" content="no-siteapp" />
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1" />
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, shrink-to-fit=no, viewport-fit=cover">
<link rel="shortcut icon" href="<?php $this->options->JFavicon() ?>" />
<?php $this->header(); ?>
<title><?php $this->options->title(); ?></title>
<link rel="stylesheet" href="<?php $this->options->themeUrl('assets/css/joe.normalize.css'); ?>">
<link rel="stylesheet" href="<?php $this->options->themeUrl('assets/css/joe.global.css'); ?>">
<script src="<?php $this->options->themeUrl('assets/js/joe.global.js'); ?>"></script>