레이아웃 작성
body 부분에 id=wrap으로 해서 작성하고 그 아래에 5가지 요소를 class로 붙인다.
해당 사이트로 접속하게 되면 side, contents 부분이 아래로 내려가 있는데 이는 레이아웃이 정렬되어 있지 않은 것이다. 이를 정렬하기 위해서 레이아웃은 기본적으로 블록구조로 되어 있기 때문에 css를 적는 부분에다가 flaot:left;
로 정렬해주면 된다.
하지만, 블록을 정렬해주고 나면 footer 부분이 깨지게 되는데 이는 clear: both;
를 입력해주게 되면 height값이 0이 되는 것을 방지할 수 있게 된다. (float:left;를 사용하면 height값이 0이 되는 상황이 발생해서 겹쳐서 보이지 않게 된다.)
시맨틱: '의미'라는 뜻
<body>
<div id="wrap">
<div class="header"></div>
<div class="nav"></div>
<div class="side"></div>
<div class="contents"></div>
<div class="footer"></div>
</div>
</body>
html5이전에는 위와 같이 구분해서 사용했지만 html5부터는 시맨틱 태그라는 것을 만들어서 의미있는 태그를 사용하기 시작했다. (단, 익스플로러8에서는 지원이 안된다.)
<body>
<div id="wrap">
<header></header>
<nav></nav>
<aside></aside>
<section></section>
<footer></footer>
</div>
</body>
위 사이트를 참고해서 해당 시맨틱 태그를 상세한 사항을 참고하면 좋을 것이다.
정의(Definition)
정의(Definition)
정의(Definition)
정의(Definition)
정의(Definition)
접근성(Accessibility)
@media: 미디어 쿼리가 시작됨을 표시합니다.
only: 미디어 쿼리 구문을 해석하라는 명령어입니다.(생략가능)
all: 미디어 쿼리를 해석해야할 대상을 나타냅니다.(생략가능)
all : 모든 미디어 유형에서 사용할 CSS를 정의합니다.
print : 인쇄 장치에서 사용할 CSS를 정의합니다.
screen : 컴퓨터 스크린에서 사용할 CSS를 정의합니다.
aural : 화면을 읽어 소리로 출력해주는 장치에서 CSS를 정의합니다.
tv : TV에서 사용할 CSS를 정의합니다.
handheld : 손에 들고 다니는 장치를 사용할 CSS를 정의합니다.
projection : 프로젝트를 위한 사용할 CSS를 정의합니다.
and: 앞과 뒤의 조건을 나타냅니다.(생략가능)
(조건문): 해당 조건을 설정할 수 있습니다.
{실행문}: 조건에 따른 실행을 설정합니다.
반응형은 width값을 정할 때 전체적인 너비(wrap)를 1200px 정도로 잡고 그 안의 태그들에 대해서는 퍼센트로 값을 정한다.
반응형을 제작할 때는 스크롤바가 나타나서는 절대로 안되기 때문에 미디어쿼리를 지정할 때 max-width값을 20px정도 크게 지정한다.