html & css guideline

66
HTML & CSS Guideline Joyfl 설진석

Upload: stylewiki-corp

Post on 10-Jun-2015

2.610 views

Category:

Technology


0 download

DESCRIPTION

초보자를 위한 HTML & CSS 가이드라인

TRANSCRIPT

Page 1: HTML & CSS Guideline

HTML & CSS Guideline Joyfl 설진석

Page 2: HTML & CSS Guideline

이 슬라이드는 초보자를 위한 것입니다. 고수분들은 가던 길 가세요.

Page 3: HTML & CSS Guideline

Who? 연세대학교 수학과 SW Maestro 2기 스타트업 Joyfl Cofounder 웹 & 서버 개발자

[email protected] fb.me/theeluwin

@theeluwin

Page 4: HTML & CSS Guideline

tag  attribute  value  string  text  

comment  

Page 5: HTML & CSS Guideline

HTML5 Template

<!DOCTYPE  html>  <html>    <head>        <title></title>    </head>    <body>    </body>  

</html>  

Page 6: HTML & CSS Guideline

Encoding <meta  http-­‐equiv="content-­‐type"  

content="text/html;  charset=UTF-­‐8"  />  

Page 7: HTML & CSS Guideline

CSS <link  type="text/css"  

rel="stylesheet"  href="style.css"  />  

Page 8: HTML & CSS Guideline

Javascript <script  type="text/javascript"  

src="script.js"></script>  

Page 9: HTML & CSS Guideline

<!DOCTYPE  html>  잊지 마라  

Page 10: HTML & CSS Guideline

standalone tag는  <tag  />  

Page 11: HTML & CSS Guideline

<br> 쓰지마  <br  /> 써  

Page 12: HTML & CSS Guideline

아니 그냥 <br  />도 쓰지마..  

Page 13: HTML & CSS Guideline

img에는 alt가 있어야 한단다  

Page 14: HTML & CSS Guideline

HTML은 WYSIWYG!

Page 15: HTML & CSS Guideline

WYSIWYG What You See Is What You Get

Page 16: HTML & CSS Guideline

<div  id="a">    <div  id="b">나쁜 예</div>  

</div>  

#b  {  float:  left;  }  

Page 17: HTML & CSS Guideline

#a안에 #b가 있음

#b에는 내용이 있는데 #a 높이가 0px..

Page 18: HTML & CSS Guideline

나쁜 이유?

0px짜리 안에 글자가 들어가있으면 안보이는게 정상이잖아?

Page 19: HTML & CSS Guideline

<div  id="a">    <div  id="b">좋은 예</div>    <div  class="clear"></div>  

</div>  

#b  {  float:  left;  }  .clear  {  clear:  both;  }  

Page 20: HTML & CSS Guideline

그러니 웬만하면 float 후 clear 해주세요

Page 21: HTML & CSS Guideline

팁?

display:  inline-­‐block; 사용해보고 몸으로 느끼셈

Page 22: HTML & CSS Guideline

layout과 property를 구분하라

Page 23: HTML & CSS Guideline

<h1  id="title">나쁜 예</h1>  

#title  {    margin-­‐left:  10px;    color:  #770000;  

}  

Page 24: HTML & CSS Guideline

<div  id="title-­‐wrap">    <h1  id="title">좋은 예</h1>  

</div>  

#title-­‐wrap  {  margin-­‐left:  10px;  }  #title  {  color:  #770000;  }  

Page 25: HTML & CSS Guideline

color는 대문자 & 6글자 혹은 rgb, rgba로 통일

Page 26: HTML & CSS Guideline

#wtf  {  color:  #aC9;  }  #good  {  color:  #AACC99;  }  

Page 27: HTML & CSS Guideline

0px은 없다 다만 0이 있을 뿐

Page 28: HTML & CSS Guideline

#wtf  {  margin:  0px;  }  #good  {  margin:  0;  }  

Page 29: HTML & CSS Guideline

텍스트는 h, p, span 만!

Page 30: HTML & CSS Guideline

<div>나쁜 예</div>  <div>    <span>좋은 예</span>  

</div>  

Page 31: HTML & CSS Guideline

a는 왜 안되냐고?

Page 32: HTML & CSS Guideline

a 안에 img가 있는 경우가 많은데 a가 display:  inline-­‐block; 을 갖고 있으면 아랫부분에 약간의 여백이 생김 그럼 WYSIWYG하지 않기 때문에 line-­‐height:  0; 을 쓰게 됨 이때 텍스트를 넣으면 다시 WYSIWYG에 어긋나게 됨 그래서 a 내용도 span으로 감싸는게 좋음

Page 33: HTML & CSS Guideline

그럼 a에 inline-­‐block을 안쓰면 되잖아요?

Page 34: HTML & CSS Guideline

쓸일 많을껄?

Page 35: HTML & CSS Guideline

tag는 의미에 맞게 사용하자

Page 36: HTML & CSS Guideline

리스트는 ul table은 진짜 표에만

Page 37: HTML & CSS Guideline

레이아웃 잡을때 table 쓰다 걸리면

해킹해서 웹쉘 설치한다음 sudo  rm  –rf  /*  

해버린다

Page 38: HTML & CSS Guideline

네이밍 가이드라인

Page 39: HTML & CSS Guideline

구분자는 hyphen으로!

Page 40: HTML & CSS Guideline

header-­‐wrap  headerWrap  header_wrap  

Page 41: HTML & CSS Guideline

사실 취향임..

Page 42: HTML & CSS Guideline

(\w+)-­‐wrap 을 써서 layout과 property를 구분

Page 43: HTML & CSS Guideline

<div  id="title-­‐wrap">    <h1  id="title">요러케</h1>  

</div>  

#title-­‐wrap  {  margin-­‐left:  10px;  }  #title  {  color:  #770000;  }  

Page 44: HTML & CSS Guideline

id에는 prefix를 붙여라 context 때문

Page 45: HTML & CSS Guideline

class는 클래스처럼  id는 인스턴스처럼  (혹은 자식클래스)

Page 46: HTML & CSS Guideline

<div  id="header">    <h1  id="header-­‐title"  class="title"></h1>  

</div>  <div  id="content">    <h1  id="content-­‐title"  class="title"><h1>  

</div>  

.title  {    font-­‐size:  20px;    color:  #770000;  

}  #content-­‐title  {  font-­‐size:  10px;  }  

Page 47: HTML & CSS Guideline

옵션의 개념 = 상속 .property  

.property-­‐option  .context  .property  

Page 48: HTML & CSS Guideline

<span  class="name">그냥 이름</span>  <span  class="name  name-­‐blue">파란 이름</span>  <div  class="context">    <span  class="name">특정 상황 내의 이름</span>  

</div>  

.name  {  text-­‐shadow:  0  0  1px  #000000;  }  

.name-­‐blue  {  color:  #000077;  }  

.context  .name  {  color:  #770000;  }  

Page 49: HTML & CSS Guideline

결론  

Page 50: HTML & CSS Guideline

WYSIWYG하게 layout과 property 구분해서

텍스트 규칙을 지키고 의미에 맞는 tag를 사용

Page 51: HTML & CSS Guideline

이것들을 지키면  IE가 아닌 이상  

자동으로 브라우저 호환 됩니다  

Page 52: HTML & CSS Guideline

IE는 어떻게 하냐고?

Page 53: HTML & CSS Guideline

if($.browser.msie)    if(parseInt($.browser.version,  10)  <=  8)      for(var  i  =  0;  i  <  2000;  i++)        alert("IE를 사용하지 않겠습니다.");  

Page 54: HTML & CSS Guideline

IE는 답이 없어.. CSS hack 써야함..

Page 55: HTML & CSS Guideline

아리 로밍 람머스 갱 케틀린 궁

Page 56: HTML & CSS Guideline

IE 해결책들 있긴 한데.. 참..

Page 57: HTML & CSS Guideline

 <!-­‐-­‐[if  IE]>    <script  type="text/javascript"  src="html5.js">    </script>  

<![endif]-­‐-­‐>  

 

behavior:  url("ie-­‐css3.htc");  

Page 58: HTML & CSS Guideline

알아두면 좋은 것들

...이 아니라 알아야 하는 것들

Page 59: HTML & CSS Guideline

jQuery Modernizr Bootstrap Rapha)l

Page 60: HTML & CSS Guideline

써보셈

Page 61: HTML & CSS Guideline

그냥 알아두면 좋을 것들

Page 62: HTML & CSS Guideline

HTML Validator validator.w3.org

Page 63: HTML & CSS Guideline

CSS Validator jigsaw.w3.org/css-validator

Page 64: HTML & CSS Guideline

브라우저 기본 속성 초기화 theeluwin.kr/cloud/css/initializr.css

Page 65: HTML & CSS Guideline

IE가 없어지는 그날까지

메멘 믓시엘

Page 66: HTML & CSS Guideline