feat: 初始化导航网站项目
添加 Flask 导航站应用,包含 Docker 部署配置、SQLite 数据库、静态资源及 CI/CD 流水线。
这个提交包含在:
@@ -0,0 +1,235 @@
|
||||
/* common.css */
|
||||
|
||||
.ui.hidden.menu {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.logo-image {
|
||||
width: 30px;
|
||||
}
|
||||
.logo-text {
|
||||
margin-left: 10px;
|
||||
font-size: 1.6em;
|
||||
font-weight: normal;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.ui.masthead.segment {
|
||||
padding: 1em 0em;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.ui.masthead h1.ui.header {
|
||||
font-size: 3em;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.ui.masthead h2.ui.header {
|
||||
font-size: 1.7em;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.ui.vertical.stripe {
|
||||
padding: 8em 0em;
|
||||
}
|
||||
|
||||
.ui.vertical.stripe .horizontal.divider {
|
||||
margin: 3em 0em;
|
||||
}
|
||||
|
||||
.ui.links.stripe.segment,
|
||||
.ui.stats.stripe.segment,
|
||||
.ui.qrcode.stripe.segment {
|
||||
padding: 0em;
|
||||
}
|
||||
|
||||
.ui.stats.stripe.segment .grid .column {
|
||||
padding-top: 3em;
|
||||
padding-bottom: 3em;
|
||||
}
|
||||
.ui.qrcode.stripe.segment .grid .column {
|
||||
padding-top: 5em;
|
||||
padding-bottom: 5em;
|
||||
}
|
||||
|
||||
.ui.stackable.celled.grid .row .links.column .ui.top.attached.label {
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
.ui.footer.segment {
|
||||
padding: 5em 0em;
|
||||
}
|
||||
|
||||
.ui.borderless.inverted.menu {
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
.ui.borderless.inverted.menu .toc.item {
|
||||
display: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 767px) {
|
||||
.ui.fixed.menu {
|
||||
display: none !important;
|
||||
}
|
||||
.ui.borderless.inverted.menu .item,
|
||||
.ui.borderless.inverted.menu .menu {
|
||||
display: none;
|
||||
}
|
||||
.ui.borderless.inverted.menu .toc.item {
|
||||
display: block;
|
||||
}
|
||||
.ui.masthead h1.ui.header {
|
||||
margin-top: 1em;
|
||||
font-size: 1.8em;
|
||||
}
|
||||
.ui.masthead h2.ui.header {
|
||||
margin-bottom: 1em;
|
||||
font-size: 1.5em;
|
||||
}
|
||||
.ui.stripe.segment {
|
||||
padding: 2em 0em;
|
||||
}
|
||||
.ui.stats.stripe.segment {
|
||||
padding: 0em;
|
||||
}
|
||||
}
|
||||
|
||||
/* text colors */
|
||||
.text-red {
|
||||
color: #DB2828;
|
||||
}
|
||||
.text-orange {
|
||||
color: #F2711C;
|
||||
}
|
||||
.text-yellow {
|
||||
color: #FBBD08;
|
||||
}
|
||||
.text-olive {
|
||||
color: #B5CC18;
|
||||
}
|
||||
.text-green {
|
||||
color: #21BA45;
|
||||
}
|
||||
.text-teal {
|
||||
color: #00B5AD;
|
||||
}
|
||||
.text-blue {
|
||||
color: #2185D0;
|
||||
}
|
||||
.text-violet {
|
||||
color: #6435C9;
|
||||
}
|
||||
.text-purple {
|
||||
color: #A333C8;
|
||||
}
|
||||
.text-pink {
|
||||
color: #E03997;
|
||||
}
|
||||
.text-brown {
|
||||
color: #A5673F;
|
||||
}
|
||||
.text-grey {
|
||||
color: #767676;
|
||||
}
|
||||
.text-black {
|
||||
color: #1B1C1D;
|
||||
}
|
||||
.text-white {
|
||||
color: #FFF;
|
||||
}
|
||||
|
||||
/* text colors inverted */
|
||||
.text-red-inverted {
|
||||
color: #FF695E;
|
||||
}
|
||||
.text-orange-inverted {
|
||||
color: #FF851B;
|
||||
}
|
||||
.text-yellow-inverted {
|
||||
color: #FFE21F;
|
||||
}
|
||||
.text-olive-inverted {
|
||||
color: #D9E778;
|
||||
}
|
||||
.text-green-inverted {
|
||||
color: #2ECC40;
|
||||
}
|
||||
.text-teal-inverted {
|
||||
color: #6DFFFF;
|
||||
}
|
||||
.text-blue-inverted {
|
||||
color: #54C8FF;
|
||||
}
|
||||
.text-violet-inverted {
|
||||
color: #A291FB;
|
||||
}
|
||||
.text-purple-inverted {
|
||||
color: #DC73FF;
|
||||
}
|
||||
.text-pink-inverted {
|
||||
color: #FF8EDF;
|
||||
}
|
||||
.text-brown-inverted {
|
||||
color: #D67C1C;
|
||||
}
|
||||
.text-grey-inverted {
|
||||
color: #DCDDDE;
|
||||
}
|
||||
.text-black-inverted {
|
||||
color: #545454;
|
||||
}
|
||||
|
||||
/* background colors */
|
||||
.background-red {
|
||||
background-color: #DB2828;
|
||||
}
|
||||
.background-orange {
|
||||
background-color: #F2711C;
|
||||
}
|
||||
.background-yellow {
|
||||
background-color: #FBBD08;
|
||||
}
|
||||
.background-olive {
|
||||
background-color: #B5CC18;
|
||||
}
|
||||
.background-green {
|
||||
background-color: #21BA45;
|
||||
}
|
||||
.background-teal {
|
||||
background-color: #00B5AD;
|
||||
}
|
||||
.background-blue {
|
||||
background-color: #2185D0;
|
||||
}
|
||||
.background-violet {
|
||||
background-color: #6435C9;
|
||||
}
|
||||
.background-purple {
|
||||
background-color: #A333C8;
|
||||
}
|
||||
.background-pink {
|
||||
background-color: #E03997;
|
||||
}
|
||||
.background-brown {
|
||||
background-color: #A5673F;
|
||||
}
|
||||
.background-grey {
|
||||
background-color: #767676;
|
||||
}
|
||||
.background-black {
|
||||
background-color: #1B1C1D;
|
||||
}
|
||||
.background-white {
|
||||
background-color: #FFF;
|
||||
}
|
||||
|
||||
code {
|
||||
padding: 0 5px;
|
||||
white-space: nowrap;
|
||||
border: 1px solid #EAEAEA;
|
||||
background-color: #F8F8F8;
|
||||
border-radius: 3px;
|
||||
}
|
||||
在新工单中引用
屏蔽一个用户