mozilla
검색 결과

    미디어

    중요: 번역은 제가 필요한 부분 및 확인 가능한 부분만 진행 하였으며 변역된 날자는(2013/03/21)이며 문서 변경이 잦아 오늘 이후는 원문과 번역이 다를 수 있습니다. 참고하세요. 미 번역/변경된 부분은 추가로 다른 분이 해 주실 것으로 믿습니다.

    CSS 시작하기 안내서의 14번쨰 장. 지금까지 이번 안내서에서는 많은 부분을 Document를 어떻게 보여 줄것인지 결정하는 CSS의 속성과 변수에 관해 소개 했다. 이번에는 Stylesheet의 구조와 목적에 대해 다시 살펴 보자.

    정보 : 미디어

    CSS의 목적은 Document가 사용자에게 어떻게 보여질 것인가를 설정하는 것이다. 전시되는 형태는 하나 이상의 형식이 있다.

    예를 들면, 아마도 이 페이지도 화면 표시 장치를 통해 보여질 것이다. 그러나 큰 화면용으로 프로젝터나 프린트해서 보는 경우도 있을 것이다. 이런 다양한 미디어의 경우 그 고유의 문자셋같은 특징이 있을 것이다. CSS는 document를 각각의 미디어에 표시하기 위한 다양한 방법을 제공한다.

    미디어의 특정 타입을 정하는 규칙을 추가 하려면 @media 다음에 미디어 타입 넣고, 그 다음에 대괄호({})로 해당 규칙을 추가 하라.

    예제

    웹사이트에 있는 document는 그 사이트 전체를 살펴볼수 있도록 조절 할 수 있는 영역을 제공한다.

    마크업 언어에서는, 조정영역의 부모 element의 idnav-area이다. (HTML5에서는 id 속성이 포함된 <div>대신에 <nav> element로 사용 할 수 있다.)

    Document가 프린트 될 경우는 이 조정 영역이 필요 없으므로 stylesheet에서는 완전히 이 영역을 제거한다.

    @media print {
      #nav-area {display: none;}
      }
    

    일반적인 미디어 타입은 아래와 같다.

    screen 컬러 컴퓨터 표시 장치
    print 출력 장치
    projection 프로젝트 출력 장치
    all 그외 모든 미디어 장치(기본 설정)
    좀더 자세히

    한 무리의 규칙들의 미디어 타입을 설정하는데는 다른 방법들도 있다.

    Stylesheet가 document로 연결되어 있을때 document의 마크업 언어는 미디어 타입을 설정하는 것을 허용한다. 예를 들면, HTML내의 LINK 태그에서 media속성으로 옵션항목으로 미디어 타입을 설정 할 수 있다.

    CSS에서 stylesheet의 앞부분에 @import로 URL로 부터 다른 stylesheet를 불러 올 수 있다. 추가적으로 미디어 타입도 사용 가능하다.

    이와 같은 규직으로, 미디어 타입별로 다른 파일에 분리하여 관리 가능하다. 이렇게 함으로써 stylesheet를 구조화하는데 유용하게 사용한다.

    좀더 자세한 미디어 타입에 대해서는 CSS의 사양서중 Media를 참고하라.

    display속성에 대해서 좀더 자세한 사항은 이 안내서 나중에 소개될 XML data를 참고하라.

    출력

    CSS에는 인쇄 매체나 프린터 출력을 위한 특별 지원을 한다

    @page 규칙을 통해 여백을 설정할 수 있다. 양면출력을 위해서는 @page:left@page:right로 각각의 여백을 개별로 설정 할 수 있다.

    출력 매체를 위해 사용되는 단위는 인치 (in), 포인트(pt = 1/72 inch), 센티미터(cm)와 밀리미터(mm)등을 사용 할 수 있다. 글자 크기 설정과 맞추기 위해 사용하는 ems(em)과 퍼센트(%)도 사용하기에 적절하다.

    Document의 내용중 페이지 분할을 위해서는 { cssxref("page-break-before") }}나 page-break-after, page-break-inside속성을 사용할 수 있다.

    예제

    아래 예제는 페이지 여백 4방향 모두를 1인치로 설정한다.

    @page {margin: 1in;}
    

     

    아래 규칙은 모든 H1 element는 새 페이지에서 시작하도록 한다.

    h1 {page-break-before: always;}
    
    좀더 자세히

    CSS의 출판 매체 지원에 대한 사항은 CSS사양서의 Paged media를 확인 하라.

    CSS의 다른 특징처럼 프린트 출력도 브라우저의 설정에 따라 다르다. 예를 들어 모질라 브라주저는 프린트 출력시 기본 바깥 여백과 머릿말, 꼬릿말이 지원된다. 사용자가 어떤 브라우저를 사용하는지, 그 브라우저의 설정값 또한 알수 없기 때문에 해당 페이지 출력물 결과를 알수 없다.

    사용자 인터페이스

    CSS는 컴퓨터 모니터같은 표시장치를 위한 특별한 사용자 인터페이스를 지원한다. 이 속성으로 Document를 동적으로 사용자가 사용자 인터페이스로 동작 할 수 있도록 변경한다.

    사용자 인터페이스 장치에 대한 특별한 미디어 타입은 없다.

    단지 5가지 설렉터가 있을 뿐이다.

    설렉터 선택
    E:hover 포인터가 E로 명시된 element위에 놓일 경우
    E:focus 키보드 포커스를 가진 E element
    E:active 사용자 현재 동작에 개임된 E element
    E:link 최근에 방문하지 않은 URL을 가진 Hyperlink인 E element
    E:visited 최근에 방문한 URL을 가진 Hyperlink인 E element

    주의: :visited 설렉터에서 획득한 정보는 Gecko 2.0에만 해당된다. 좀더 자세한 사항은 Privacy and the :visited selector을 보라.

    cursor속성은 포인터의 모양을 설정한다. 몇몇 일반적인 모양은 다음과 같다. 브라우저에서 마우스를 아래 리스트에 각각 아이템으로 옮기면 그 모양을 확인 할 수 있다.

    설렉터 선택
    pointer 링크임을 나타낼때
    wait 프로그램이 실행중이라 입력을 받지 못하는 상태일때
    progress 프로그램이 작업을 수행하고 있지만 입력을 받을 수 있는 상태
    default 기본 상태(보통 화살표 모양)

    outline속성은 키보드 포커스를 가리키는 외곽선을 생성할때 사용한다. 그 값은 사용자가 방향을 설정할 수 없다는 것을 제외하고는 border속성과 유사하다.

    Some other features of user interfaces are implemented using attributes, in the normal way. For example, an element that is disabled or read-only has the disabled attribute or the readonly attribute. Selectors can specify these attributes like any other attributes, by using square brackets: [disabled] or [readonly].

    Example

    These rules specify styles for a button that changes dynamically as the user interacts with it:

    .green-button {
      background-color:#cec;
      color:#black;
      border:2px outset #cec;
      }
    
    .green-button[disabled] {
      background-color:#cdc;
      color:#777;
      }
    
    .green-button:active {
      border-style: inset;
      }
    

     

    This wiki does not support a user interface on the page, so these buttons do not "click". Here are some static images to illustrate the idea:

    Click Me Click Me Click Me
     
    disabled normal active

     

    A fully functional button also has a dark outline around the entire button when it is the default, and a dotted outline on the face of the button when it has keyboard focus. It might also have a hover effect when the pointer is over it.

    More details

    For more information about user interfaces in CSS, see User interface in the CSS Specification.

    There is an example of Mozilla's markup language for user interfaces, XUL, in Part II of this tutorial.

    Action: Printing a document

    1. Make a new HTML document, doc4.html. Copy and paste the content from here:
      <!DOCTYPE html>
      <html>
        <head>
          <title>Print sample</title>
          <link rel="stylesheet" href="style4.css">
        </head>
        <body>
          <h1>Section A</h11>
          <p>This is the first section...</p>
          <h1>Section B</h1>
          <p>This is the second section...</p>
          <div id="print-head">
            Heading for paged media
          </div>
          <div id="print-foot">
            Page: 
          </div>
      </body>
      </html>
      
    2. Make a new stylesheet, style4.css. Copy and paste the content from here:
      /*** Print sample ***/
      
      /* defaults  for screen */
      #print-head,
      #print-foot {
        display: none;
        }
      
      /* print only */
      @media print {
      
      h1 {
        page-break-before: always;
        padding-top: 2em;
        }
      
      h1:first-child {
        page-break-before: avoid;
        counter-reset: page;
        }
      
      #print-head {
        display: block;
        position: fixed;
        top: 0pt;
        left:0pt;
        right: 0pt;
      
        font-size: 200%;
        text-align: center;
        }
      
      #print-foot {
        display: block;
        position: fixed;
        bottom: 0pt;
        right: 0pt;
      
        font-size: 200%;
        }
      
      #print-foot:after {
        content: counter(page);
        counter-increment: page;
        }
      
      } /* end print only */
      
    3. View this document in your browser; it uses your browser's default style.
    4. Print (or print preview) the document; the stylesheet places each section on a separate page, and it adds a header and footer to each page. If your browser supports counters, it adds a page number in the footer.
      Heading for paged media
      Section A
      This is the first section...
      Page: 1
      Heading for paged media
      Section B
      This is the second section...
      Page: 2
    Challenges
    Move the print-specific style rules to a separate CSS file.

    Read the @import reference page to find details of how to import the new print-specific CSS file into your style4.css stylesheet.

    Make the headings turn blue when the mouse pointer is over them.

     See solutions to these challenges.

    What next?

    If you had difficulty understanding this page, or if you have other comments about it, please contribute to its Discussion page.

    So far, all the style rules in this tutorial have been specified in files. The rules and their values are fixed. The next page describes how you can change rules dynamically by using a programming language: JavaScript

    문서 태그 및 공헌자

    Contributors to this page: SpikeYou, teoli
    최종 변경: teoli,