[HTML5&CSS] Form styling하기

label을 styling하기 위해서 font와 text의 크기를 조절한다.

textboxes나 textareas는 일반적으로 그 크기를 바꾸고, border를 제거한다. 또 예시 입력값인 placeholder를 추가해서 어떤 값을 입력하면 되는지를 도와주도록 한다.

 

button을 styling하기 위해서 일반적으로 배경색과 크기를 바꾼다. button의 box 바깥이 흉하므로 좀 손본다.

 

Select boxes를 styling하기 위해서는 일반적으로 text box처럼 보이게 만들고, 오른쪽의 아래 화살표를 styling한다.

 

form validation을 위해서 HTML은 required attribute를 제공한다. 입력이 꼭 필요한 field는 required attribute를 사용한다. CSS에서 이를 select하기 위해서 :valid 와 :invalid pseudo selector를 사용할 수 있다.

 

[HTML5&CSS] Form Elements

다음 form을 구성하는 HTML elements에 대해서 알아보자.

  • form
  • input
  • label
  • textarea
  • fieldset
  • select
  • button

 

form element는 다른 input이나 button elements들을 담는 element이다. form에는 action과 method, 두가지 attributes를 넘겨야 한다. action attribute는 그 form의 data를 어디로 submit할지를 정한다. method attribute는 그 form의 data를 get으로 보낼지, post로 보낼지를 정한다. 일반적으로 get method는 query string으로 표현되므로 unsecured data를 다룰 때 사용되고, post는 secure data를 다룰 때, 또는 많은 양의 data를 다룰 때 사용된다. 다음과 같은 형식이다.

input element는 text input field, radio buttons, checkboxes를 만든다. type과 name attribute가 필요하다. type attribute는 입력의 type을 정한다. name attribute는 form을 submit할 때 구분할 unique name을 정한다. form data는 key-value pairs로 구성되는데, 이 때 키가 되는 것이 name이고, 해당하는 값이 value가 된다.

text type의 예제는 다음과 같다. maxlength attribute로 최대 길이를 정할 수 있다.

E-mail의 입력에는 email type을 사용할 수 있다.

password의 입력에는 password type을 사용할 수 있다.

checkboxes를 사용할 때는 checkbox type을 사용한다. name에 unique한 값을 주고, 각 checkbox의 value에도 unique한 값을 준다.

radio buttons를 사용할 때는 radio type을 사용한다. 모든 name에 같은 값을 주고, 각 button의 value에 unique한 값을 준다.

 

label element는 input elements들과 연관된 text를 줄 때 사용한다. 예를 들면 위에서 “이름 :” 같은 것들. 스크린리더를 사용하는 사람들에게 도움이 된다. label element는 input의 id attribute와 연관되는 for attribute를 가진다.

 

textarea element는 여러 줄의 text 입력을 위해 사용한다. rows와 cols attributes로 size를 지정할 수 있다.

 

fieldset element는 여러 form 내의 elements들을 그룹짓고 싶을 때 사용한다.

 

select element는 select boxes를 만든다. 매우 긴 list의 옵션 중 하나를 선택할 때 쓴다. select element 안에 option element의 list를 넣어서 만든다.

 

button element는 form을 submit할 때 사용한다. type attribute로 세가지 값을 사용할 수 있다. 첫번째로 아무 행동도 안하는 것, 두번째로 “reset”, 이걸 누르면 form 값들이 모두 리셋된다. 마지막으로 “submit”, 클릭하면 submit한다.

[Web] 웹 개발 시 유용한 사이트

웹 개발 시 유용한 사이트들을 정리한다.

 

어린이날 선언문 전문

5월 5일, 어린이날을 맞아 읽어보는 어린이날 선언문 전문

 

어린이날 선언문

어른에게 드리는 글

  1. 어린이를 내려다보지 마시고 치어다 보아주시오
  2. 어린이를 늘 갓가히 하사 자조 이야기하여 주시오
  3. 어린이에게 경어를 쓰시되 늘 보드럽게하여 주시오
  4. 이발이나 목욕, 의복 가튼 것을 때마춰 하도록 하여 주시오
  5. 잠자는 것과 운동하는 것을 충분히 하게 하여 주시오
  6. 산보와 원족 가튼 것을 각금각금 식혀주시오
  7. 어린이를 책망하실 때에는 쉽게 성만 내지 마시고 자세자세히 타일러 주시오
  8. 어린이들이 서로 모히어 질겁게 놀만한 노리터나 기관 가튼 것을 지어주시오
  9. 대우주의 뇌신경의 말초는 늙은이에게도 잇지 아니하고 절믄이이게도 잇지 아니하고 오즉 어린이 그들에게만 잇는 것을 늘 생각하야 주시오

어린 동무들에게

  1. 돗는 해와 지는해를 반드시 보기로 합시다
  2. 어른에게는 물론이고 당신들끼리도 서로 존대하기로 합시다
  3. 뒷간이나 담벽에 글씨를 쓰거나 그림 가튼 것을 그리지 말기로 합시다
  4. 길가에서 떼를 지어 놀거나 류리 가튼 것을 버리지 말기로 합시다
  5. 꼿이나 풀을 꺽지 말고 동물을 사랑하기로 합시다
  6. 뎐차나 긔차에서는 어른에게 자리를 사양하기로 합시다
  7. 입은 꼭 다물고 몸은 바르게 가지기로 합시다

 

아래는 내맘대로 풀어쓴 글.

어른에게 드리는 글

  1. 어린이를 내려다보지 마시고 쳐다봐주세요
  2. 어린이를 늘 가까이 하시고 자주 이야기 해주세요
  3. 어린이에게 높임말을 쓰시고 늘 부드럽게 대해 주세요
  4. 이발이나 목욕, 옷을 입히는 것을 때 맞춰 해주세요
  5. 잠자는 것과 운동하는 것을 충분히 하게 해주세요
  6. 산책이나 소풍을 가끔씩 시켜 주세요
  7. 어린이를 나무라실 때는 쉽게 화내지 마시고 자세히 타일러 주세요
  8. 어린이들이 서로 모여 즐겁게 놀만한 놀이터나 기관 같은 것을 지어 주세요
  9. 대우주의 뇌신경의 말초는 노인이나 청년이 아닌 오직 어린이에게만 있다고 생각해 주세요.

어린이들에게

  1. 돋는 해와 지는 해를 반드시 보기로 해요.
  2. 어른들께는 물론이고 어린이들끼리도 서로 존댓말을 해요.
  3. 화장실이나 담벼락에 글씨를 쓰거나 그림 같은 것을 그리지 않기로 해요
  4. 길가에서 떼를 지어 놀거나 유리 같은 것을 버리지 않기로 해요
  5. 꽃이나 풀을 꺾지 말고 동물을 사랑하기로 해요
  6. 버스나 지하철에서는 어른에게 자리를 양보하기로 해요
  7. 입은 꼭 다물고 몸을 바르게 하기로 해요

 

[HTML5&CSS] Display property: block과 inline

display property 중 block과 inline에 대해 알아보자.

기본적으로 elements들은 block 아니면 inline 으로 setting된다. block은 horizontally 모든 공간을 점유한다. 반면, inline은 그 content만큼의 공간만 차지한다.
block-level element의 예는 div가 있고, inline element의 예로 span이 있다.

다음과 같이 해서 이 값을 바꿀 수도 있다.

 

[HTML5&CSS] Text based elements

다음 Text based elements를 살펴 보자.

  • Headings
  • Paragraphs
  • Inline text elements
  • Lists

HTML 안의 heading element들은 H1 에서 H6 까지 6단계까지 있다.

문단(paragraph를) 나타내는 태그는 p이다. 문단 단위로 p 태그를 사용해서 나눠준다.

Inline text elements는 여러가지가 있다.
강조(emphasized)를 원한다면 em을 사용한다. 예를 들면, 원하는게 있다면 <em>지금</em> 하라.
정말 중요하게 표시하고 싶다면, strong을 사용한다. 예를 들면, 이건 정말 <strong>중요</strong>한 거.
하이퍼링크를 사용하고 싶다면, a를 사용한다. 예를 들면, <a href=”https://blog.dasomoli.org”>다솜돌이의 블로그</a>
별 뜻 없이 어떤 내용을 다른 내용들과 나누고 싶을 때 사용하는 태그는 span이다. div와의 차이점은 inline으로 사용한다는 점이다. 일반적인 용도로 다른 text들과 다르게 특정 text의 색을 바꾸는데 많이 사용한다. 예를 들면 다음과 같다.

list는 세가지 타입이 있다. unordered list (ul), ordered list (ol), definition list (dl).

unordered list와 ordered list는 list item (li) 으로 항목을 나타낸다.

CSS를 사용해서 list-style 속성으로 square, circle, upper-alpha, upper-roman 등으로 list의 스타일을 정해줄 수 있다.

definition list (dl)은 자주 쓰이진 않는다. 어떤 용어의 정의와 설명을 서술할 때 사용한다. 용어(term)에는 dt를 사용하고, 설명(description)에는 dd를 사용한다. 예를 들면 다음과 같다.

CSS reset 하기

각기 다른 브라우저들이 서로 다르게 렌더링하기 때문에 이를 위해서 CSS를 reset한다.

Eric Mayer가 만든 좀 더 복잡한 CSS reset 코드가 있다. http://meyerweb.com/eric/tools/css/reset/ 에서 찾을 수 있다.

 

CSS text properties들을 알아보자.

두 그룹으로 나눌 수 있다. Text를 다루는 것과 Font를 다루는 그룹. 먼저 text를 보자.

color 속성은 text의 색상(color)를 바꾼다. hexadecimal 아니면 RGB로 표현하던가, 이름을 줄 수 있다. 예를 들면 다음과 같다.

text-align 속성은 left-aligned, centered 혹은 right-aligned 로 text의 정렬 방법을 정한다.

밑줄을 준다든지 하고 싶을 때는 text-decoration 속성을 준다.

취소선을 줄 때는 text-decoration에 line-through를 주면 된다.

대소문자 변환을 위해서는 text-transform 속성을 이용한다. 다음은 모두 대문자가 된다. lowercase를 쓰면 모두 소문자, capitalize를 쓰면 각 단어별 첫 글자만 대문자가 된다.

줄간격을 위해서는 line-height 속성을 이용한다. 각 줄 사이의 vertical spacing을 조절한다.

 

이제 font를 다루는 그룹의 속성들을 보자.

font-family 속성은 어떤 폰트를 쓸지를 결정한다. 첫번째 것을 시도하고 없으면 두번째, 그것도 없으면 세번째 이렇게 나아간다.

font-size 속성은 font 크기를 조절한다. px나 상대적 단위인 em을 사용할 수 있다. em을 사용하면 사용자가 정한 default font size에 따라 그 비율로 조절된다.

font-weight은 font 굵기를 조절한다. 일반적으로 굵은 (bold)를 사용할 때 사용한다. 기본값은 당연히 normal이다.