[merge] dev and cfpMain

This commit is contained in:
mysper
2021-01-19 17:39:16 +08:00
commit 8abe7576db
102 changed files with 16413 additions and 0 deletions

View File

@@ -0,0 +1,259 @@
@import '../hyperpoint.scss';
$width-svg-sitcon2021: 341px;
$width-svg-sitcon: 244px;
$width-svg-topic: 515px;
$width-svg-cfp: 368px;
$width-svg-date: 207px;
$width-svg-location: 227px;
$width-svg-news: 188px;
#cfp-header {
padding-left: 20px;
padding-right: 20px;
padding-top: 126px;
img.svg {
height: auto;
}
z-index: 1;
.spot-box {
padding-bottom: 260px;
.spot-box-row:not(:first-child) {
margin-top: 32px;
}
}
.info-box {
.date-location {
.date-wrapper {
margin-bottom: 48px;
}
}
}
.info-box {
display: flex;
flex-direction: row;
// justify-content: space-around;
align-items: flex-end;
& > * {
display: flex;
flex-direction: row;
justify-content: center;
}
.date-location {
order: 1;
margin-bottom: 72px;
flex: 1;
}
.cfp-title {
order: 2;
flex: 1;
}
.cfp-news {
order: 3;
margin-bottom: 72px;
flex: 1;
}
}
}
// Layout for mobile
@include md {
#cfp-header {
.info-box {
display: flex;
flex-direction: row;
align-items: flex-end;
flex-wrap: wrap;
.cfp-title {
order: 1;
flex: 0 0 100%;
display: flex;
flex-direction: row;
justify-content: center;
margin-bottom: 72px;
}
.date-location {
order: 2;
flex: 0 0 50%;
display: flex;
flex-direction: row;
justify-content: center;
margin-bottom: 0;
.date-wrapper {
margin-bottom: 36px;
}
}
.cfp-news {
order: 3;
flex: 0 0 50%;
display: flex;
flex-direction: row;
justify-content: center;
margin-bottom: 0;
}
}
}
}
@include md {
#cfp-header {
padding-top: 72px;
padding-bottom: 72px;
.spot-box {
padding-bottom: 400px;
.spot-box-row:not(:first-child) {
margin-top: 30px;
}
}
.info-box {
.cfp-title {
margin-bottom: 56px;
}
.date-location {
.date-wrapper {
margin-bottom: 36px;
}
}
.cfp-news {
}
}
}
$scale: 0.8;
#svg-sitcon2021 {
width: $width-svg-sitcon2021 * $scale;
}
#svg-sitcon {
width: $width-svg-sitcon * $scale;
}
#svg-topic {
width: $width-svg-topic * $scale;
}
#svg-date {
width: $width-svg-date * $scale;
}
#svg-location {
width: $width-svg-location * $scale;
}
#svg-news {
width: $width-svg-news * $scale;
}
#svg-cfp {
width: $width-svg-cfp * $scale;
}
}
@include sm {
#cfp-header {
padding-top: 60px;
padding-bottom: 60px;
.spot-box {
padding-bottom: 360px;
.spot-box-row:not(:first-child) {
margin-top: 20px;
}
}
.info-box {
.cfp-title {
margin-bottom: 56px;
}
.date-location {
.date-wrapper {
margin-bottom: 20px;
}
}
.cfp-news {
}
}
}
$scale: 0.7;
#svg-sitcon2021 {
width: $width-svg-sitcon2021 * $scale;
}
#svg-sitcon {
width: $width-svg-sitcon * $scale;
}
#svg-topic {
width: $width-svg-topic * $scale;
}
#svg-date {
width: $width-svg-date * $scale;
}
#svg-location {
width: $width-svg-location * $scale;
}
#svg-news {
width: $width-svg-news * $scale;
}
#svg-cfp {
width: $width-svg-cfp * $scale;
}
}
@include xs {
#cfp-header {
padding-top: 48px;
padding-bottom: 48px;
.spot-box {
padding-bottom: 240px;
.spot-box-row:not(:first-child) {
margin-top: 20px;
}
}
.info-box {
.cfp-title {
margin-bottom: 32px;
}
.date-location {
.date-wrapper {
margin-bottom: 16px;
}
}
.cfp-news {
}
}
}
$scale: 0.45;
#svg-sitcon2021 {
width: $width-svg-sitcon2021 * $scale;
}
#svg-sitcon {
width: $width-svg-sitcon * $scale;
}
#svg-topic {
width: $width-svg-topic * $scale;
}
#svg-date {
width: $width-svg-date * $scale;
}
#svg-location {
width: $width-svg-location * $scale;
}
#svg-news {
width: $width-svg-news * $scale;
}
#svg-cfp {
width: $width-svg-cfp * $scale;
}
}

View File

@@ -0,0 +1,34 @@
@import '@/assets/scss/breakpoint.scss';
@import '@/assets/scss/color.scss';
.agenda.card:not(.container) {
a.image.container {
display: inline-block;
width: 100%;
line-height: 0; // prevent background overflow
background-color: #ffffff;
border-radius: 11px;
box-shadow: 0 3px 15px 0 rgba(89, 120, 206, 0.56);
// smooth transition from hover -> default state
will-change: transform;
transform: scale(1.0);
transition-duration: .25s;
img {
border-radius: 11px;
width: 100%;
}
&:hover {
transform: scale(1.04);
transition-duration: .25s;
}
}
p.description {
line-height: 1.55em;
text-align: center;
font-weight: 900;
}
}

View File

@@ -0,0 +1,16 @@
.cfp-background {
// image
background-image:
url('./assets/image/CFPBackground.svg'),
url('./assets/image/sitcon-icon.svg');
background-position:
center center,
center 12%;
background-repeat: no-repeat,no-repeat;
background-size: cover,auto;
overflow-y: hidden;
height: auto;
width: 100vw;
z-index: -1;
}

View File

@@ -0,0 +1,285 @@
//import google font
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@500;700;900&display=swap");
//my variable
$color-pale-grey: #f0f7fd;
$color-dark-slate-blue: #1f4163;
$color-dark-sky-blue: #3d93e9;
$color-white: #ffffff;
$color-slate-blue: #5f7a95;
$color-mid-blue: #226bb4;
$fontFamily-NotoSansTC: "Noto Sans TC";
//@mixin
@mixin clearFloat() {
clear: both;
}
$limitWidth: 80vw;
//cfp-information <Agenda> component
.info {
&-container {
width: $limitWidth;
margin: 0 auto;
}
&-section {
@include clearFloat();
width: $limitWidth;
h1 {
height: 70px;
font-family: $fontFamily-NotoSansTC;
font-size: 48px;
font-weight: 900;
font-stretch: normal;
font-style: normal;
line-height: 1.9;
letter-spacing: normal;
text-align: left;
color: $color-mid-blue;
margin: 10px 0;
}
&__content {
width: $limitWidth;
p {
font-size: 18.5px;
font-family: $fontFamily-NotoSansTC;
font-weight: 500;
font-stretch: normal;
font-style: normal;
line-height: 2.1;
letter-spacing: 0.2px;
text-align: left;
color: $color-mid-blue;
}
strong {
font-weight: 900;
}
ul {
list-style: none;
margin: 0;
padding: 0;
li {
margin: 0;
padding: 0 0 0 20px;
span {
display: inline-block;
height: 4px;
width: 4px;
transform: translate(-200%, -150%);
background-color: $color-mid-blue;
border-radius: 50%;
}
}
}
&--sub {
width: $limitWidth;
h2 {
height: 60px;
font-family: $fontFamily-NotoSansTC;
font-size: 36px;
font-weight: 900;
font-stretch: normal;
font-style: normal;
line-height: 2.2;
letter-spacing: normal;
text-align: left;
color: $color-mid-blue;
margin: 10px 0;
}
}
}
}
&-kind {
//background-color: blueviolet;
width: 90vw;
margin-top: 45px;
display: flex;
flex-direction: row;
justify-content: space-around;
@media screen and (max-width: 1200px) {
flex-direction: column;
}
&__itemBox {
width: 330px;
border-radius: 13px;
background-color: $color-mid-blue;
padding: 26px 20px 34px 20px;
@media screen and (max-width: 1200px) {
width: 90%;
margin: 20px auto;
}
&-title {
color: $color-white;
display: inline-block;
text-align: center;
width: 100%;
font-family: $fontFamily-NotoSansTC;
font-weight: 900;
font-stretch: normal;
font-style: normal;
letter-spacing: normal;
text-align: center;
font-size: 34px;
}
&-text {
width: 100%;
//height: 172px;
margin: 0 auto;
text-align: left;
font-size: 19px;
P {
color: $color-white;
font-family: $fontFamily-NotoSansTC;
margin: 15px 0;
}
strong {
font-weight: 900;
}
}
// p {
// color: $color-white;
// font-family: $fontFamily-NotoSansTC;
// font-size: 19px;
// font-weight: 500;
// font-stretch: normal;
// font-style: normal;
// line-height: 2.1;
// letter-spacing: 0.2px;
// }
//
// }
}
// &__itemBox {
// float: left;
// padding: 26px 20px 34px 20px;
// border-radius: 13px;
// background-color: $color-mid-blue;
// width: 354px;
// height: 230px;
// margin: 0 72px 62px 0;
// &-title {
// color: $color-white;
// display: inline-block;
// text-align: center;
// width: 100%;
// font-family: $fontFamily-NotoSansTC;
// font-weight: 900;
// font-stretch: normal;
// font-style: normal;
// // line-height: 1.94;
// letter-spacing: normal;
// text-align: center;
// //modify
// font-size: 34px;
// // margin: 0 0px 0px 40px;
// }
// &-text {
// width: 350px;
// height: 172px;
// margin: 0 auto;
// text-align: left;
// p {
// color: $color-white;
// font-family: $fontFamily-NotoSansTC;
// font-size: 19px;
// font-weight: 500;
// font-stretch: normal;
// font-style: normal;
// line-height: 2.1;
// letter-spacing: 0.2px;
// }
// strong {
// font-weight: 900;
// }
// }
// }
}
&-qa {
width: 1000px;
&__itemBox {
border-radius: 29px;
box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
background-color: $color-white;
margin: 20px 0;
padding: 10px 20px;
cursor: pointer;
span {
font-family: $fontFamily-NotoSansTC;
color: $fontColor;
font-weight: 900;
font-size: 20px;
line-height: 42px;
}
p {
display: block;
width: 90%;
}
}
}
// &-qa {
// margin: 30px 0;
// padding: 15px 0;
// // margin-bottom: 120px;
// &__itemBox {
// border-radius: 29px;
// box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
// background-color: $color-white;
// margin: 0 0 30px 0;
// &-title {
// display: inline-block;
// width: 1230px;
// height: 30px;
// padding: 8px 41px 11px 23px;
// font-family: $fontFamily-NotoSansTC;
// font-size: 24px;
// font-weight: 900;
// font-stretch: normal;
// font-style: normal;
// line-height: 1.5;
// letter-spacing: normal;
// text-align: left;
// color: $color-mid-blue;
// }
// &-input {
// position: absolute;
// opacity: 0;
// cursor: pointer;
// }
// &-input:checked ~ &-text {
// display: block;
// width: 94%;
// margin: 0 auto;
// padding-bottom: 20px;
// }
// &-text {
// display: none;
// }
// &-checkmark {
// }
// }
// }
}

View File

@@ -0,0 +1,682 @@
// font
$fontFamily: 'Noto Sans TC', sans-serif;
$fontStyle: normal;
$light-blue: #3D93E9;
$fontColor: #226bb4;
$buttonHoverColor: #ffffff;
@mixin Font() {
font-family: $fontFamily;
}
@mixin hyperlinkFont() {
text-decoration: underline;
}
// font size
$h1FontSize: 30px;
$h2FontSize: 24px;
$h3FontSize: 16px;
$contextFontSize: 13px;
$buttonFontSize: 24px;
$mh1FontSize: 26px;
$mh2FontSize: 20px;
$mh3FontSize: 14px;
$mcontextFontSize: 14px;
$mbuttonFontSize: 18px;
$hyperlinkFontSize: 14px;
$enlargeFontSize: 55px;
$subFontSize: 30px;
// letter spacing
$titleLetterSpace: 0;
$contextLetterSpace: 0.2px;
$buttonLetterSpace: 0;
$hyperlinkLetterSpace: 0;
// background
$buttonHoverBg: #226BB4;
#cfp {
.introduction-container {
overflow-x: hidden;
overflow-y: hidden;
margin: -8px;
position:relative;
}
.introduction {
// flex
display: flex;
flex-direction: column;
align-items: left;
// font
@include Font;
color: $fontColor;
// size
margin-left: 15%;
margin-top: 50%;
@media screen and(max-width: 414px) {
width:100%;
}
}
.about-section {
// font
font-size: $contextFontSize;
letter-spacing: $contextLetterSpace;
line-height: 42px;
width:90%;
@media screen and(max-width: 414px) {
font-size: $mcontextFontSize;
width:160%;
}
}
.discuss-section {
font-size: $contextFontSize;
letter-spacing: $contextLetterSpace;
line-height: 42px;
@media screen and(max-width: 414px) {
font-size: $mcontextFontSize;
width:80%;
}
}
.topic-intro {
// size
margin-top: 130px;
// font
font-size: $contextFontSize;
letter-spacing: $contextLetterSpace;
line-height: 42px;
@media screen and(max-width: 414px) {
margin-top: 60%;
width: 110%;
}
}
.last-part {
// size
margin-top: 70px;
height: 325px;
// font
font-size: $contextFontSize;
letter-spacing: $contextLetterSpace;
line-height: 42px;
@media screen and(max-width: 414px) {
margin-top: 30%;
width: 70%;
margin-bottom: 30%;
}
}
.buttons {
// font
color: $fontColor;
font-size: $buttonFontSize;
font-weight: 900;
letter-spacing: $buttonLetterSpace;
line-height: 30px;
// size
margin-right: 37px;
padding: 12px 15px 12px 15px;
// box
background-color: #ffffff;
box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
transition-duration: 0.2s;
border: none;
border-radius: 8px;
// display
display: inline-block;
position: relative;
z-index: 5;
@media screen and (max-width: 414px) {
font-size: $mbuttonFontSize;
font-weight: 900;
letter-spacing: 0px;
color: $fontColor;
text-align: center;
opacity: 1;
border-radius: 6px;
padding: 10px 8px 10px 8px;
margin-right: 15px;
margin-top: 20px;
}
}
.button-post {
// display
display: inline;
// size
margin-left: 40px;
margin-top: -20px;
z-index: 2;
@media screen and (max-width: 414px) {
width: 414px;
margin-left: 0px;
}
}
.buttons:hover {
// box
background-color: $buttonHoverBg;
box-shadow: 0 0 15px rgba(0, 0, 0, 0.2), 0 0 20px rgba(0, 0, 0, 0.19);
// font
h3 {
color: $buttonHoverColor;
}
}
.date {
// display
display: inline;
// size
margin-right: 35px;
// align
vertical-align: bottom;
line-height: 30px;
@media screen and(max-width:414px){
font-size: 30px;
margin-right: 10px;
line-height: 50px;
vertical-align:middle;
}
}
}
h1, h2, h3, p, span {
font-family: $fontFamily;
color: $fontColor;
}
h1 {
// font
font-size: $h1FontSize;
line-height: 70px;
font-weight: 900;
letter-spacing: $titleLetterSpace;
.enlarge {
font-size: $enlargeFontSize;
@media screen and (max-width: 414px) {
line-height: 80px;
}
}
.sub {
font-size: $subFontSize;
}
@media screen and (max-width: 414px) {
line-height: 20px;
}
}
.right {
text-align: left;
@media screen and (max-width: 414px) {
text-align: right;
margin-right: 30%;
}
}
h2 {
// font
font-size: $h2FontSize;
letter-spacing: $titleLetterSpace;
font-weight: 900;
line-height: 70px;
margin: 0px;
}
h3 {
// Font
font-size: $h3FontSize;
letter-spacing: $titleLetterSpace;
font-weight: 900;
line-height: 15px;
margin: 0px;
}
.about-section > .context {
margin-right: 50%;
}
.topic-intro > .context {
margin-right: 30%;
}
.context {
// font
font-size: $contextFontSize;
line-height: 30px;
letter-spacing: $contextLetterSpace;
font-weight: normal;
}
.detail {
// display
display: inline;
// font
font-size: $contextFontSize;
line-height: 20px;
letter-spacing: $contextLetterSpace;
font-weight: normal;
// align
vertical-align: bottom;
// size
@media screen and (max-width: 414px) {
margin-right: 25%;
line-height: 35px;
font-size: $mcontextFontSize;
}
}
.context-span {
// font
font-size: $contextFontSize;
font-weight: 900;
letter-spacing: $contextLetterSpace;
line-height: 42px;
}
.context-hyperlink {
// font
font-size: $hyperlinkFontSize;
letter-spacing: $hyperlinkLetterSpace;
color: $light-blue;
font-weight: normal;
line-height: 42px;
}
p.tag {
// font
font-size: 14px;
line-height: 15px;
letter-spacing: 0;
font-weight: 900;
// align
text-align: center;
margin-top: 0px;
margin-bottom: 5px;
@media screen and (max-width: 414px) {
font-size: 16px;
}
}
p.tag.sub {
font-size: 12px;
line-height: 10px;
@media screen and (max-width: 414px) {
font-size: 12px;
margin-top: 8px;
}
}
p.small-tag {
margin-block-start: 0em;
margin-block-end: 0.5em;
font-size: 12px;
text-align: center;
@media screen and (max-width: 414px) {
line-height:12px;
font-size: 10px;
}
}
//NOTE: the size should be smaller, this temporary size is provided to support min font size of browser
.cfp-img {
// box
border-radius: 4px;
margin-bottom: 12px;
// size
width: 175px;
height: 118px;
box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
@media screen and (max-width:414px){
border-radius: 2px;
margin-bottom: 12px;
width: 111px;
height: 75px;
box-shadow: 0px 1px 6px rgba(89, 120, 206, 0.56);
}
}
.thumbnails {
// box
margin-left: -25.5px;
@media screen and (max-width:414px){
margin-left: -9px;
}
}
.img-table {
// box
border-style: none;
border-spacing: 25.5px 0px; //25.5
@media screen and (max-width: 414px) {
width: 87%;
align-content: center;
border-spacing: 0px 0px;
}
}
.td-width {
vertical-align: top;
@media screen and (max-width: 414px){
text-align: center;
width: 123px;
}
}
.tag-table{
// box
border-style: none;
border-spacing: 0px 0px; //25.5
// size
width: 500px;
}
.first-box {
box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
border-radius: 60px;
transform: rotate(15deg);
margin-bottom: -900px;
margin-left: -200px;
margin-top: -300px;
z-index: 1;
@media screen and(max-width: 960px){
border-radius: 40px;
margin-bottom: -800px;
transform: rotate(13deg);
}
@media screen and(max-width: 414px){
border-radius: 27px;
margin-top: 200px;
margin-bottom: -870px;
margin-left: -150px;
transform:scale(1);
transform: rotate(12deg);
}
}
.second-box {
box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
border-radius: 32px;
transform: rotate(15deg);
margin-top: 270px;
margin-bottom: -1900px;
margin-left: -700px;
z-index: 1;
@media screen and(max-width: 414px){
box-shadow: -10px 30px 30px 0 rgba(135, 152, 199, 0.56);
margin-top: 5px;
margin-left: -415px;
margin-bottom: -1560px;
transform: rotate(12deg) scale(0.6);
z-index: 2;
}
}
.hiden-box {
position: absolute;
margin-top: 1200px;
margin-left:-300px;
margin-bottom: 0px;
z-index: -1;
@media screen and(max-width: 414px){
margin-top: 1400px;
transform: rotate(12deg);
z-index: -1;
}
}
.box-back {
z-index: 2;
@media screen and(max-width: 960px) {
margin-top: -10%;
margin-left: -10%;
}
@media screen and(max-width: 414px) {
margin-top: -10%;
margin-left: -10%;
}
}
.box-back2 {
z-index: 2;
@media screen and(max-width: 960px) {
margin-top: -10%;
margin-left: -10%;
}
@media screen and(max-width: 414px) {
margin-top: -10%;
margin-left: -10%;
}
}
.SITCON-text-path {
transform: scale(0.7);
padding-left: 300px;
margin-right: -550px;
margin-bottom: -600px;
padding-top: 300px;
z-index: 2;
@media screen and(max-width: 414px) {
z-index: -2;
}
}
.des-text-path {
//background: url(../../assets/images/cfp/Path_762.svg) no-repeat;
transform: scale(0.7);
margin-bottom: -565px;
padding-top: 65px;
margin-left: -350px;
z-index: 2;
@media screen and(max-width: 960px){
margin-left: -150px;
margin-bottom: -545px;
}
@media screen and(max-width: 414px){
//background-image: url(../../assets/images/cfp/Mobile/Path_763.svg);
margin-top: 40px;
margin-left: -80px;
transform: scale(0.9);
background: url(./assets/images/cfp/Mobile/Path_763.svg) no-repeat;
padding-top: -565px;
margin-bottom: -665px;
}
}
.des-blue-bar {
transform: rotate(15deg);
margin-left: -400px;
margin-top: 360px;
margin-bottom: -1360px;
@media screen and(max-width: 414px){
margin-left: -600px;
margin-top: 160px;
transform: rotate(12deg) scale(0.6);
}
}
.paper-image {
transform: scale(0.75);
margin-top: -240px;
margin-left: 270px;
margin-bottom: -710px;
z-index: 1;
@media screen and(max-width: 414px){
z-index: 3;
margin-top: -890px;
margin-left: -150px;
margin-bottom: -1030px;
transform: rotate(-7deg) scale(0.35);
}
}
.background {
//background: url(../../assets/images/cfp/Background.svg) no-repeat;
//content: url("../../assets/images/cfp/Background.svg") no-repeat;
position: absolute;
top: 0;
width:200%;
//max-height: 2000px;
margin-left: -69%;
margin-top: -30%;
text-align: center;
z-index: -2;
@media screen and(max-width: 414px){
//content: url() no-repeat;//../../assets/images/cfp/Mobile/Mobile-background.svg
//visibility: hidden;
background: url(./assets/images/cfp/Mobile/Mobile-background.svg) !important;
object-position: -99999px 99999px;
overflow: hidden;
margin-left: -20%;
margin-top: -20%;
z-index: -1;
transform: scale(1);
}
}
.ellipse {
position: absolute;
width: 100%;
margin-top: -75%;
margin-left: -14%;
align-content: center;
transform: scale(0.31);
@media screen and(max-width: 414px){
margin-top: -20%;
transform: scale(0.60);
}
}
.sitcon-icon {
position: absolute;
width: 100%;
margin-top: -98%;
margin-left: -14%;
align-content: center;
transform: scale(0.14);
@media screen and(max-width: 414px){
margin-top: -42%;
transform: scale(0.3);
}
}
.sitcon-pic-2021 {
position: absolute;
width: 100%;
margin-top: -49%;
margin-left: -14%;
align-content: center;
transform: scale(0.18);
@media screen and(max-width: 414px){
margin-top: -40%;
transform: scale(0.5);
}
}
.sitcon-title-zh {
position: absolute;
width: 100%;
margin-top: -46%;
margin-left: -14%;
align-content: center;
transform: scale(0.11);
@media screen and(max-width: 414px){
margin-top: -30%;
transform: scale(0.4);
}
}
.sitcon-topic {
position: absolute;
width: 100%;
margin-top: -45%;
margin-left: -14%;
align-content: center;
transform: scale(0.23);
@media screen and(max-width: 414px){
margin-top: -20%;
transform: scale(0.65);
}
}
.sitcon-date {
position: absolute;
width: 100%;
margin-top: -31%;
margin-left: -44%;
transform: scale(0.13);
@media screen and(max-width: 414px){
margin-top: 65%;
transform: scale(0.35);
}
}
.sitcon-place {
position: absolute;
width: 100%;
margin-top: -36.5%;
margin-left: -44%;
transform: scale(0.13);
@media screen and(max-width: 414px){
margin-top: 73%;
margin-left: -40%;
transform: scale(0.45);
}
}
.sitcon-qeury {
position: absolute;
width: 100%;
margin-top: -18.5%;
margin-left: -14%;
transform: scale(0.2);
@media screen and(max-width: 414px){
margin-top: 50%;
transform: scale(0.6);
}
}

View File

@@ -0,0 +1,126 @@
@import '@/assets/scss/breakpoint.scss';
@import '@/assets/scss/color.scss';
@import '@/assets/scss/font.scss';
$fontFamily: Noto Sans CJK TC, monospace;
#info-schedule {
max-width: 80vw;
margin: 0 auto;
font-family: $fontFamily;
font-size: 20px;
line-height: 2.1em;
letter-spacing: 0.2px;
color: $mid-blue;
* {
position: relative;
}
a {
color: $mid-blue;
text-decoration: underline;
}
h1 {
font-size: 48px;
line-height: 70px;
margin: 15px 0;
}
h2 {
font-size: 36px;
line-height: 70px;
}
h3 {
font-size: 24px;
line-height: 30px;
}
h1, h2, h3 {
font-weight: 900;
}
ul {
li {
&::before {
content: "";
margin: 2px;
line-height: 42px;
}
}
}
section:not(:last-of-type), article:not(:last-of-type) {
margin-bottom: 55px;
}
#theme-example {
> p {
padding: 20px 0;
}
}
#theme-example ~ p {
padding: 20px 0;
}
#presentation-example, #espresso-example {
> p {
padding-bottom: 40px;
}
.agenda.card.container {
display: grid;
grid-template-columns: repeat(4, 1fr);
column-gap: 62px;
row-gap: 40px;
}
}
}
#code-of-conduct a {
font-weight: 900;
}
@include md {
#info-schedule {
margin: 0 auto;
font-size: 14px;
h1, h2 {
font-size: 26px;
line-height: 2.69em;
}
h3 {
font-size: 20px;
line-height: 30px;
}
h1, h2, h3 {
margin: 0;
}
#schedule {
margin-bottom: unset;
}
#theme-example ~ p {
padding: 15px 0;
}
#presentation-example, #espresso-example {
margin-bottom: unset;
.agenda.card.container {
grid-template-columns: repeat(2, 1fr);
column-gap: 42px;
row-gap: 30px;
}
}
}
}

View File

@@ -0,0 +1,46 @@
@import '@/assets/scss/breakpoint.scss';
@import '@/assets/scss/color.scss';
.topic {
padding: 30px 0;
display: grid;
grid-template-columns: 256px min-content 1fr;
h3.title {
line-height: 1.67em;
}
.divider {
width: 0;
height: 100%;
border-left: 2px $mid-blue solid;
margin: 0 37px;
}
.title, .description {
display: flex;
align-items: center;
}
}
@include md {
.topic {
grid-template-columns: 1fr;
padding: 20px 0;
h3.title {
br[data-delimiter=""] {
display: none;
}
}
.divider {
width: 100%;
height: 0;
border-bottom: none;
border-top: 2px $mid-blue solid;
margin: 15px 0;
}
}
}

View File

@@ -0,0 +1,35 @@
$max-width-0: 1225px;
$max-width-1: 1175px;
$max-width-2: 1030px;
$max-width-3: 646px;
$max-width-4: 415px;
@mixin xs {
@media (max-width: $max-width-4) {
@content;
}
}
@mixin sm {
@media (max-width: $max-width-3) {
@content;
}
}
@mixin md {
@media (max-width: $max-width-2) {
@content;
}
}
@mixin lg {
@media (max-width: $max-width-1) {
@content;
}
}
@mixin xl {
@media (max-width: $max-width-0) {
@content;
}
}

View File

@@ -0,0 +1,2 @@
$mid-blue: #226bb4;
$white: white;

View File

@@ -0,0 +1,2 @@
// import web font
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@500;700;900&display=swap');

145
src/assets/scss/footer.scss Normal file
View File

@@ -0,0 +1,145 @@
@import './breakpoint.scss';
// varible declare
$fontColor: white;
$backgroundColor: #1f4163;
$fontFamily: Noto Sans CJK TC, monospace;
@mixin fontSize() {
font-size: 14pt;
line-height: 2;
@include xl {
}
@include lg {
}
@include md {
}
@include sm {
font-size: 14pt;
}
@include xs {
font-size: 12pt;
}
}
@mixin iconSize() {
font-size: 2.2em;
margin-right: 36px;
@include xl {
font-size: 2.1em;
margin-right: 20px;
}
@include lg {
}
@include md {
font-size: 1.8em;
}
@include sm {
}
@include xs {
font-size: 1.6em;
}
}
@mixin footerLayout() {
// flex
display: flex;
flex-direction: row;
justify-content: center;
& > .footer-right {
margin-left: 100px;
}
@include md {
flex-direction: column;
justify-content: flex-start;
align-items: center;
// height: 320px;
& > .footer-right {
margin-left: 0;
}
& > * {
margin-left: 0;
width: 80%;
}
.footer-left {
margin-bottom: 24px;
}
.footer-right {
padding-bottom: 0;
}
}
@include xs {
& > * {
width: 90%;
}
}
}
.footer-container {
background: $backgroundColor;
// position
// position: absolute;
// bottom: 0;
// left: 0;
margin-top: auto;
// size
width: 100vw;
padding-top: 45px;
padding-bottom: 45px;
.footer-left {
display: inline-flex;
flex-direction: column;
justify-content: center;
//margin-left: 100px;
.footer-brand {
margin-bottom: 24px;
}
}
.footer-right {
display: inline-flex;
flex-direction: column;
justify-content: center;
padding-bottom: 24px;
//margin-left: 100px;
.footer-context {
margin-bottom: 14px;
}
}
// layout
@include footerLayout;
}
.footer-community-icon {
.community-icon {
@include iconSize;
color: $fontColor;
}
.community-icon:first {
margin-left: 0;
}
}
.footer-context {
@include fontSize;
font-family: $fontFamily;
color: $fontColor;
font-weight: bold;
}
.footer-font-block {
// display flex
display: flex;
flex-direction: column;
// size
width: auto;
}

View File

@@ -0,0 +1,29 @@
// There are breakpoints used by hyperbola
$w1366: 1366px;
$w1024: 1024px;
$w768: 768px;
$w414: 414px;
@mixin lg {
@media screen and (max-width: $w1366 - 1px) {
@content;
}
}
@mixin md {
@media screen and (max-width: $w1024 - 1px) {
@content;
}
}
@mixin sm {
@media screen and (max-width: $w768 - 1px) {
@content;
}
}
@mixin xs {
@media screen and (max-width: $w414 - 1px) {
@content;
}
}

43
src/assets/scss/main.scss Normal file
View File

@@ -0,0 +1,43 @@
// global
@import './reset.scss';
@import './variable.scss';
@import './color.scss';
@import './util.scss';
// components
@import './footer.scss';
@import './CFP/cfp_introduction.scss';
@import './CFP/CFP.scss';
@import './CFP/cfpSubNew.scss';
@import "./news.scss";
.sitcon-burnfont {
color: $mid-blue;
font-weight: 900;
}
.link {
cursor: pointer;
}
body {
width: 100vw;
position: relative;
overflow-x: hidden;
display: flex;
flex-direction: column;
height: 100vh;
font-size: 14pt;
margin:0;
}
#app {
width: 100vw;
height: 100vh;
overflow-x: hidden;
margin: 0;
}
small {
font-size: 0.66em;
}

316
src/assets/scss/news.scss Normal file
View File

@@ -0,0 +1,316 @@
@import './hyperpoint.scss';
@import './color.scss';
// desktop mode
#news-header {
padding: 72px 280px;
.top-bar {
position: relative;
// background: red; // debug
height: 60px;
.return-wrapper {
// location
position: absolute;
left: -30px;
bottom: -4px;
.shape-wrapper {
background: $white;
border-radius: 12px;
-webkit-box-shadow: -18px 18px 0px -6px $mid-blue,
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
-moz-box-shadow: -18px 18px 0px -6px $mid-blue,
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
box-shadow: -18px 18px 0px -6px $mid-blue,
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
@keyframes jump {
0% {position: relative;bottom: 0px;}
50% {position: relative;bottom: 20px;}
100% {position: relative;bottom: 0px;}
}
&:hover {
animation: jump .6s ease-in 0s infinite reverse;
}
.text-wrapper {
width: 68px;
height: 68px;
line-height: 68px;
text-align: center;
color: $mid-blue;
font-weight: bold;
font-size: 16pt;
}
}
}
.contribute-wrapper {
display: none; // display in mobile
}
.title-wrapper {
.svg-cfp-news {
height: 60px;
width: auto;
}
}
}
.cfp-body {
padding: 40px 48px;
margin-top: 54px;
border-radius: 24px;
color: $white;
background: $mid-blue;
font-size: 14pt;
font-weight: bold;
display: flex;
flex-direction: column;
align-items: center;
.spot-wrapper {
margin-bottom: 2.25em;
h1 {
font-size: 26pt;
margin-bottom: 1em;
}
.countdown {
line-height: 1.5;
}
}
.time-wrapper {
display: flex;
flex-direction: row;
align-items: flex-start;
h2 {
height: 24pt;
}
p {
font-size: 1.44em;
}
.tilde-wrapper {
margin-right: 0.85em;
}
}
}
}
@include lg {
#news-header {
padding-left: 120px;
padding-right: 120px;
}
}
// mobile mode
@include md {
#news-header {
font-size: 14pt;
padding: 72px 100px;
.top-bar {
position: initial;
height: 5em;
border-radius: 2.5em;
padding-left: 2.5em;
padding-right: 2.5em;
background: $white;
-webkit-box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
-moz-box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
display: flex;
flex-direction: row;
align-items: center;
.return-wrapper {
// location
position: initial;
flex: 1;
.shape-wrapper {
background: $white;
border-radius: 12px;
-webkit-box-shadow: -13px 13px 0px -6px $mid-blue,
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
-moz-box-shadow: -13px 13px 0px -6px $mid-blue,
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
box-shadow: -13px 13px 0px -6px $mid-blue,
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
.text-wrapper {
width: 3em;
height: 3em;
line-height: 3em;
text-align: center;
color: $mid-blue;
font-weight: bold;
font-size: 1em;
}
}
}
.title-wrapper {
flex: 1;
.svg-cfp-news {
height: 2.25em;
width: auto;
}
}
.contribute-wrapper {
display: initial;
flex: 1;
text-align: end;
.btn-contribute {
display: inline-block;
border-radius: 6px;
background: $mid-blue;
color: $white;
font-weight: 900;
padding: 0.5em;
font-size: 1.2em;
}
}
}
.cfp-body {
padding-top: 2em;
padding-left: 2em;
padding-right: 2em;
padding-bottom: 3.5em;
margin-top: 54px;
border-radius: 24px;
color: $white;
background: $mid-blue;
font-weight: bold;
font-size: 1em;
.spot-wrapper {
h1 {
font-size: 2em;
margin-bottom: 1em;
}
margin-bottom: 2.25em;
}
.time-wrapper {
display: flex;
flex-direction: column;
h2 {
height: initial;
}
p {
font-size: 1.25em;
}
.start-time-wrapper {
h2,
p {
margin-bottom: 1.25em;
}
}
.end-time-wrapper {
h2 {
margin-bottom: 1.25em;
}
}
.tilde-wrapper {
display: none;
}
}
}
}
}
@include sm {
#news-header {
font-size: 12pt;
padding: 60px 40px;
.cfp-body {
font-size: 14pt;
}
}
}
// a 540px break point will be better = =
@media screen and (max-width: 539px) {
#news-header {
font-size: 10pt;
padding: 36px 18px;
.top-bar {
height: 4em;
border-radius: 2em;
padding-left: 1.66em;
padding-right: 1em;
-webkit-box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
-moz-box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
.return-wrapper {
.shape-wrapper {
.text-wrapper {
width: 2.4em;
height: 2.4em;
line-height: 2.4em;
text-align: center;
color: $mid-blue;
font-weight: bold;
font-size: 1em;
}
}
}
.title-wrapper {
flex: 1;
.svg-cfp-news {
height: 1.85em;
width: auto;
}
}
.contribute-wrapper {
display: initial;
flex: 1;
text-align: end;
.btn-contribute {
display: inline-block;
border-radius: 6px;
background: $mid-blue;
color: $white;
font-weight: 900;
padding: 0.5em;
font-size: 1.2em;
}
}
}
.cfp-body {
font-size: 12pt;
}
}
}

111
src/assets/scss/reset.scss Normal file
View File

@@ -0,0 +1,111 @@
*,
*:before,
*:after {
box-sizing: border-box;
}
html,
body,
div,
span,
object,
iframe,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
code,
em,
img,
small,
strike,
strong,
sub,
sup,
tt,
b,
u,
i,
ol,
ul,
li,
fieldset,
form,
label,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
main,
canvas,
embed,
footer,
header,
nav,
section,
video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
text-size-adjust: none;
}
footer,
header,
nav,
section,
main {
display: block;
}
body {
line-height: 1;
}
ol,
ul {
list-style: none;
}
blockquote,
q {
quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
content: '';
content: none;
}
a {
text-decoration: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
input {
-webkit-appearance: none;
border-radius: 0;
}

35
src/assets/scss/util.scss Normal file
View File

@@ -0,0 +1,35 @@
.text-center {
text-align: center;
.ignore {
display: inline-block;
width: 0;
}
}
.shape-wrapper {
display: inline-block;
.text-wrapper {
display: inline-block;
}
&.diamond {
$angle: 45deg;
-moz-transform: rotate($angle);
-webkit-transform: rotate($angle);
-o-transform: rotate($angle);
-ms-transform: rotate($angle);
transform: rotate($angle);
.text-wrapper {
-moz-transform: rotate(-$angle);
-webkit-transform: rotate(-$angle);
-o-transform: rotate(-$angle);
-ms-transform: rotate(-$angle);
transform: rotate(-$angle);
}
}
}
.d-inline-block {
display: inline-block;
}

View File