CSS를 이용하여 테이블의 특정 column 보이지 않도록(hidden으로) 처리 하기


--------------------------------------------------

순번 | 이름 | 나이 | 성별 | 주소 | 전화번호 | 기타 |

--------------------------------------------------

  ...................... 중 략 ..................


위와 같은 테이블이 있다고 할때 코드는 아래와 같은 식이 될 것이다.


      <table>

        <thead>

          <th>순번</th>

          <th>이름</th>

          <th>나이</th>

          <th>성별</th>

          <th>주소</th>

          <th>전화번호</th>

          <th>기타</th>

        </thead>

        <tr>

          <td>순번 정보 표시...</td>

          <td>이름 정보 표시...</td>

          <td>나이 정보 표시...</td>

          <td>성별 정보 표시...</td>

          <td>주소 정보 표시...</td>

          <td>전화번호 정보 표시...</td>

          <td>기타 정보 표시...</td>

        </tr>

      </table>



이럴 경우 나이 항목(column), 나이 칼럼 전체가 보이지 않도록 즉 |순번|이름|성별|주소|... 와같이 보이도록 해야 할 경우 이를 CSS를 이용하면 아주 간단하게 처리가 된다.

즉 나이 칼럼이 hidden으로 처리되게 하는 것이다. 물론 이때 비록 보이지는 않지만 내부적으로는 나이 칼럼이 존재하고 이 값을 form 전송시 전송한다거나 하는 작업은 정상적으로 이뤄지게 된다.

이럴경우 다음과 같이 처리하면된다.


  <head>

      ... 중 략 ...

    <style type="text/css">

      ... 중 략 ...

      th:nth-of-type(3) { display: none; }   

      td:nth-of-type(3) { display: none; }

      ... 중 략 ...

    </style>

  </head>


nth-of-type()의 괄호안에 몇번째 칼럼을 보이지 않게 할지를 지정해 주면된다.





CSS text-align에 대해


text-align

문장(글자)을 좌/우/가운데... 등으로 정렬되게 하는 속성


이 속성이 가질수 있는 값(value)

left : 문장을 좌로 정렬

right : 문장을 우로 정렬

center : 문장을 가운데로 정렬

justify : 해당 라인 좌우 전체를 꽉 채우도록 정렬


아래는 코드 조각이다.


h1 {

   text-align: left;}


p {

   text-align: justify;}


.author {

   text-align: right;}




CSS에서 가상 클래스(pseudo class)를 이용하여 링크에 마우스 동작 감지하는 법


웹 사이트의 링크에 마우스를 올리면 링크에 밑줄이 그어지면서 링크의 색상이 바뀌거나 혹은 이미 방문했던 링크는 다른 색상으로 변경되어 있어 사용자로 하여금 방문했던 곳인줄 인지하게 하는 기능이 있다. 이러한 기능은 아래의 가상 클래스(pseudo class)들을 이용해서 기능을 구현할 수 있다.

아래 가상 클래스들은 링크 뿐만아니라 버튼, input 컨트롤 등에도 적용이 가능하다.


:link

⇒ 아직 방문하지 않은 링크에 대해 스타일(색상, 글자 모양, 밑줄 등)을 지정하는 기능


:visited

⇒ 이미 방문했던 링크에 대해 스타일을 지정하는 기능


:hover

⇒ 사용자가 링크에 마우스를 올릴 때 다른 형태의 스타일을 갖도록 지정하는 기능


:activity

⇒ 링크가 현재 시점에서 활성화(activated)되고 있는 상태일때 스타일 지정하는 기능.

예를 들어서 버튼의 경우 눌려져 있는 시점, 링크의 경우는 마우스가 클릭되어 있는 시점을 의미한다. 짧은 순간 마우스를 눌렀다 떼기 때문에 스타일의 변화가 순간적으로 나타나지만 마우스를 롱 클릭해 보면 알수 있다.


:focus

⇒ element가 focus을 얻었을 때 스타일을 지정할수 있다.

focus란 입력 박스(input box)에 내용을 입력하기 위해 커서가 위치해 있을 때 입력 박스가 focus를 가진 상태이다. 혹은 키보드의 탭 키를 누를 때 focus가 이동하는데 이러한 방식으로도 element들이 focus를 가질수 있다. 

이렇게 focus를 가졌을 때 스타일을 지정할 수 있다.


가상 클래스를 사용할 때는 반드시 다음과 같은 순서로 CSS를 작성해야 한다.

:link → :visited → :hover → :focus → :active


아래는 CSS 코드 조각이다.


a:link {

color: deeppink;

text-decoration: none;}


a:visited {

color: black;}


a:hover {

color: deeppink;

text-decoration: underline;}


a:active {

color: darkcyan;}




CSS 텍스트에 밑줄, 가운데 줄, 윗 줄 표시하기


▶ text-decoration 속성 

  •   개념 : CSS에서 텍스트에 밑줄, 가운데줄, 윗줄 표시하기위한 속성
  •   none : 기존에 적용되었던 decoration을 제거
  •   underline : 밑줄 긋기
  •   overline : 텍스트의 윗쪽에 line 긋기
  •   line-through : 텍스트 가운데 line 긋기(취소 선)
  •   blink : 텍스트 깜빡이게(시각적으로 혼란스럽게 하는 면이 있어 잘 사용 안함)


예)


h2 {

   text-decoration: underline;

}


.info {

   text-decoration: line-through;

}





SERIF 글꼴

Georgia  : T

Times New Roman  : T



SANS-SERIF 글꼴

Arial  : T

Verdana : T



MONOSPACE 글꼴

Courier New : T 


Serif란 문자의 끝 부분에 장식되어 있는 부가적인 짧은 선을 Serif라고 한다. Geogia의 T와 Arial의 T에서 후자는 끝 부분에 부가 된 다른 선이 없다. 


Sans-Serif에서 sans는 without(...이 없는)의 의미이다. 따라서 serif가 '없는'(sans) 글꼴을 말한다. Arial과 Verdana의 경우와 같다. 반면에 Geogia나 Times New Roman의 경우들은 글자의 끝 부분들에 추가적인 짧은 선들로 장식되어 있다. 이렇게 장식된 부분을 serif라고 한다. 따라서 Sans-Serif는 이러한 것이 없는 것을 말한다.


Monospace는 모든 글자들의 폭(width)이 같은 글꼴을 의미한다. non-monospace 글꼴들은 각 글자들마다의 폭(width)이 각각 상이하다.





요즘 틈틈이 읽고 있는 책인데 상당히 괜찮은 것 같아서 소개합니다.

단순히 HTML과 CSS의 기능만 소개하는 정도가 아니라 보다 근원적인 뒷 배경 

이야기들과 각종 노하우들과 팁들이 소개되고 있는 책입니다.


책의 편집 형태도 장황한 산문식 설명이 아니라 보기 쉽고 가독성있게 핵심적인 설명으로 유익하게 보고 있는 책입니다.

단지 영문 자료라는 약간의 무거움은 있겠네요.



Jon Duckett, 「HTML & CSS - Design and Build Websites 」, John Wiley & Sons, Inc.


아래 사이트에 관련 소스들과 더 많은 자료들이 있습니다.


http://www.htmlandcssbook.com/


PDF 자료는 검색해 보면 나올 겁니다^^




+ Recent posts