1->5 순서대로 점점 작아진다고 보면 됨.
<ul class="nav-list">
<li class="nav-item">
</ul>
sc-000, sec-000, section-00, section1,2,3,4 ,main-000, content1,2,3
<section class="sc-news">
사용<button class="btn-prev" aria-label="이전슬라이드"></button>
둘 다 장애인을 위한 태그
장애인들이 탭에 해당하는거구나 하고 인식할수 있게 하는 것
ex) 아래와 같이, ul에 role="tablist"를 입력하여, tab이라는걸 인식하게 하고,
a를 링크로 인식하면 안되니, role="tab"을 입력하여 tab이라는걸 인식하게 하자.
<ul class="tab-list" role="tablist">
<li class="tab-item">
<a href="" role="tab">뉴스스탠드</a>
</li>
</ul>
위의 tablist에서 선택되어져있는지, 장애인에게 알려주기 위한 태그
아래와 같다면, 뉴스스탠드가 선택되어있는상태이고, 스포츠가 선택되어있지 않다는 상태인걸 장애인들이 인식 가능
<ul class="tab-list" role="tablist">
<li class="tab-item">
<a href="" role="tab" aria-selected="true">뉴스스탠드</a>
<a href="" role="tab" aria-selected="false">스포츠</a>
</li>
</ul>
위의 ul에서 role="tablist"가 입력되어있고, 바로 밑에 li가 있다면, 아래처럼 li에 role="presentaion" 이라고 입력 해야함.
미리보기의 용도로 입력.
<ul class="tab-list" role="tablist">
<li class="tab-item" role="presentation">
<a href="" role="tab">뉴스스탠드</a>
</li>
</ul>
<div class="set-area" role="radiogroup">
<button class="btn-list" role="radio">aaa</button>
<button class="btn-list" role="radio">bbb</button>
<div>
<div class="set-area" role="radiogroup">
<button class="btn-list" role="radio" aria-checked="true">aaa</button>
<button class="btn-list" role="radio" aria-checked="false">bbb</button>
<div>
<div class="util-area">
<button class="btn-menu" aria-expanded="false">
</div>
<div class="util-area">
<button class="btn-menu" aria-expanded="false" aria-haspopup="menu">
</div>
폴더구조
style.scss는 asset폴더에 바로 빼두자,
style.scss은 아래의 scss들을 한곳에 모아두는 용도
ex) 아래와같이 style.scss에 모두 import해서 사용. 순서는 위에서부터 변수->폰트->리셋->이 적용되어야 헤더 푸터 메인에 적용이되니, 위의 순서를 지키는게 좋음.
@import './utils./var';
@import './utils/mixin';
@import './base/typo';
@import './base/reset';
@import './base/preset';
@import './layout/header';
@import './layout/footer';
@import './page/main';
페이지에서 쓰는 공통으로 쓰는것들 모아두는곳
.blind{
position: absolute;
width: 1px;
height: 1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
margin: -1px;
}
*clip은 요소의 특정부분만 보이게하는 속성
.skip-nav{
position: absolute;
top:0; left:0;
a{
display: flex;
align-items: center;
justify-contents: center;
position: absolute;
width: 150px;
height: 40px;
background: #000;
color: #fff;
transform: translateY(-100%);
&:focus,
&:active{
transform: translateY(0);
}
}
}
.sp-bg1{
background-image: url('경로')
background-size: contain;
background-repeat: no-repeat;
}
.btn-keyboard{
&::before{
@extend .sp-bg1;
}
}
폰트를 넣는곳.
작성예시
ex)아래와같이 woff2 우선 불러오고 못했다 -> woff -> ttf 차례로 불러오게끔
*ttf는 불러온느방식이 다름.
@font-face{
font-family: "본인이작성(시스템이름그대로작성하는거추천)";
src: url('../fonts/000.woff2';) format('woff2');},
url('../fonts/000.woff';) format('woff');},
url('../fonts/000.ttf';) format('trueType');
font-weight: normal;
font-style: normal;
},
위처럼 작성 한 뒤, 폰트스타일, 등등 수치바꾸고싶으면 아래와같이 변수명 추가해서 사용하면됨.
@font-face{
font-family: "본인이작성(시스템이름그대로작성하는거추천)";
src: url('../fonts/000.woff2';) format('woff2');},
url('../fonts/000.woff';) format('woff');},
url('../fonts/000.ttf';) format('trueType');
font-weight: normal;
font-style: normal;
},
@font-face{
font-family: "본인이작성(시스템이름그대로작성하는거추천)";
src: url('../fonts/000.woff2';) format('woff2');},
url('../fonts/000.woff';) format('woff');},
url('../fonts/000.ttf';) format('trueType');
font-weight: 100;
font-style: italic;
}
woff2 웹오픈폰트포맷2 : woff에서 50%~20% 압축까지 되어있는것(woff보다 업그레이드버젼)
woff 웹오픈폰트포맷 : 모던브라우저(최신) 모두 지원, 가장 가볍고 좋음
ttf 트루타입폰트 : 보통 디자이너들이 포토샵에서 설치해서 쓴느 폰트(옛날방식)
otf 오픈트루타입폰트 : 보통 맥 유저들이 쓰는 폰트(옛날방식)
eot : 익스플로러 위한 폰트(안쓴다고보면됨)
sans-serif: 고딕체
serif: 명조체
페이지에 푸터,헤더를 모아두는 곳
[class*="ico-"]{}
: ico-로 시작하는 것들 선택하는 선택자메인페이지를 놔두는 곳
<i class="vt-line vt1"></i>
<i class="vt-line vt2"></i>
<i class="vt-line vt3"></i>
<i class="vt-line vt4"></i>
<i class="vt-line vt5"></i>
.vt-line{
position: absolute;
top: 0;
width: 1px;
height: 100%;
background: #ebebeb;
@for $i from 1 to 6{
&.vt#{$i}{
left: 131px*$i;
}
}
}
변수를 놔두는 곳
<link rel="stylesheet" href="./assets/css/style.css">
*{margin:0;padding:0;font:inherit;color:inherit;}
*, :after, :before {box-sizing:border-box;}
:root {-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;text-size-adjust:100%;cursor:default;line-height:1.5;overflow-wrap:break-word;-moz-tab-size:4;tab-size:4}
html, body {height:100%;}
img, picture, video, canvas, svg {display: block;max-width:100%;}
button {background:none;border:0;cursor:pointer;}
ul {list-style:none}
a {text-decoration:none}
fieldset{border:0;
table {border-collapse:collapse;border-spacing:0}