CSS / background-attachment / 배경 이미지의 스크롤 여부를 정하는 속성

개요

background-attachment로 배경 이미지의 스크롤 여부를 정합니다.

  • 기본값 : scroll
  • 상속 : No
  • 애니메이션 : No
  • 버전 : CSS Level 1

문법

background-attachment: scroll | fixed | local | initial | inherit
  • scroll : 선택한 요소와 같이 움직입니다. 내용을 스크롤하면 배경 이미지는 스크롤되지 않습니다.
  • fixed : 움직이지 않습니다.
  • local : 선택한 요소와 같이 움직입니다. 내용을 스크롤하면 배경 이미지도 스크롤됩니다.
  • initial : 기본값으로 설정합니다.
  • inherit : 부모 요소의 속성값을 상속받습니다.

예제

다음 이미지를 배경으로 한 예제입니다.

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>CSS</title>
    <style>
      body {
        height: 600px;
      }
      div {
        width: 30%;
        height: 300px;
        overflow: auto;
        float: left;
        margin: 0px 10px;
        background-image: url( "images/bg-300x200.jpg" );
        background-repeat: no-repeat;
        border: 1px solid #bcbcbc;
        font-size: 36px;
      }
      .jb-scroll {
        background-attachment: scroll;
      }
      .jb-fixed {
        background-attachment: fixed;
      }
      .jb-local {
        background-attachment: local;
      }
    </style>
  </head>
  <body>
    <div class="jb-scroll">
      <p>scroll</p>
      <ul>
        <li>One</li>
        <li>Two</li>
        <li>Three</li>
        <li>Four</li>
        <li>Five</li>
        <li>Six</li>
        <li>Seven</li>
        <li>Eight</li>
        <li>Nine</li>
        <li>Ten</li>
      </ul>
    </div>
    <div class="jb-fixed">
      <p>fixed</p>
      <ul>
        <li>One</li>
        <li>Two</li>
        <li>Three</li>
        <li>Four</li>
        <li>Five</li>
        <li>Six</li>
        <li>Seven</li>
        <li>Eight</li>
        <li>Nine</li>
        <li>Ten</li>
      </ul>
    </div>
    <div class="jb-local">
      <p>local</p>
      <ul>
        <li>One</li>
        <li>Two</li>
        <li>Three</li>
        <li>Four</li>
        <li>Five</li>
        <li>Six</li>
        <li>Seven</li>
        <li>Eight</li>
        <li>Nine</li>
        <li>Ten</li>
      </ul>
    </div>
  </body>
</html>

속성값을 fixed로 하면 웹브라우저 가시 영역의 왼쪽 위를 기준으로 배경 이미지가 고정됩니다.

body {
  height: 600px;
  background-image: url( "images/bg-300x200.jpg" );
  background-repeat: no-repeat;
}

위와 같이 수정하면 어디에 위치하는지 확인할 수 있습니다.

바깥쪽 스크롤바를 움직이면...

  • scroll : 선택한 요소와 같이 스크롤됩니다.
  • fixed : 움직이지 않습니다.
  • local : 선택한 요소와 같이 스크롤됩니다.

각 요소의 스크롤바를 움직이면...

  • scroll : 움직이지 않습니다.
  • fixed : 움직이지 않습니다.
  • local : 선택한 요소와 같이 스크롤됩니다.

브라우저 지원

  • Chrome : 1.0+
  • Firefox : 1.0+
  • Internet Explorer : 4.0+
  • Opera : 3.5+
  • Safari : 1.0+

Related Posts

CSS / background-attachment / 배경 이미지의 스크롤 여부를 정하는 속성

CSS / background-attachment / 배경 이미지의 스크롤 여부를 정하는 속성

개요 background-attachment로 배경 이미지의 스크롤 여부를 정합니다. 기본값 : scroll 상속 : No 애니메이션 : No 버전 : CSS Level 1 문법 background-attachment: scroll | fixed | local | initial | inherit scroll : 선택한 요소와 같이 움직입니다. 내용을 스크롤하면 배경 이미지는 스크롤되지 않습니다. fixed : 움직이지 않습니다. local : 선택한 요소와 같이 움직입니다. 내용을 스크롤하면 배경 이미지도 스크롤됩니다. initial : 기본값으로 ...

CSS / linear-gradient - 선형 그라데이션 효과 만들기

CSS / linear-gradient - 선형 그라데이션 효과 만들기

linear-gradient linear-gradient는 CSS3에서 추가된 것으로, 선형 그라데이션 효과를 만듭니다. 인터넷 익스플로러는 버전 10 이상에서 사용할 수 있습니다. 기본 문법 linear-gradient( direction, color1, color2, …, color3 ) direction에는 그라데이션 방향을 입력합니다. to bottom : 위에서 아래로 그라데이션을 만듭니다. (기본값) to top : 아래에서 위로 그라데이션을 만듭니다. to left : 오른쪽에서 왼쪽으로 그라데이션을 만듭니다. to right : 왼쪽에서 오른쪽으로 그라데이션을 ...

CSS / 선택자(Selector) / 가상 클래스

CSS / 선택자(Selector) / 가상 클래스

:empty :empty는 내용이 없는 비어있는 요소를 선택합니다. 예를 들어 li:empty 는 li 요소 중 내용이 없는 것을 선택합니다. 즉 <li></li> 가 선택됩니다. 공백도 내용이 있는 것으로 봅니다. 따라서 <li> </li> 처럼 빈 칸이 있는 것은 선택되지 않습니다. :first-child :first-child는 형제 요소 중 첫번째 요소를 선택합니다. :hover :hover는 요소에 마우스를 올린 상태를 선택합니다. 예를 들어 p:hover { color: red; } 는 p 요소에 마우스를 올렸을 때 글자색을 ...

CSS / float와 overflow

CSS / float와 overflow

float float는 요소를 왼쪽 또는 오른쪽에 배치할 때 유용한 속성입니다. float 속성을 부여한 요소의 다음 요소는 float 속성을 부여한 요소가 차지하는 위치만 제외하고 나머지 공간을 채우게 됩니다. 사진을 왼쪽 또는 오른쪽에 배치하고 그 주위를 텍스트로 채울 때 사용하거나, 사이트 레이아웃을 만들 때 사용합니다. overflow overflow는 내용이 요소의 크기를 벗어났을 때 어떻게 처리할지를 정하는 속성입니다. ...

CSS / 기초 / 문법

CSS / 기초 / 문법

문법 다음은 가장 간단한 CSS 코드입니다. h1 { color: red } h1, color, red 세 개의 단어가 있는데 각각 선택자, 속성, 값이라고 합니다. 선택자(selector) : 무엇을 꾸밀지 정합니다. h1은 h1 요소를 꾸미겠다는 뜻입니다. 속성(property) : 어떤 모양을 꾸밀지 정합니다. color는 색을 꾸미겠다는 뜻입니다. 값(value) : 어떻게 꾸밀지 정합니다. red는 빨간색으로 만들겠다는 뜻입니다. 즉, CSS 코드는 다음처럼 구성됩니다. selector ...

CSS / 애니메이션 / transform / scale – 2D 확대 또는 축소하기

CSS / 애니메이션 / transform / scale – 2D 확대 또는 축소하기

transform / scale transform의 scale로 요소를 확대 또는 축소할 수 있습니다. 평면에서의 확대 또는 축소입니다. IE는 버전 10부터 지원합니다. 문법 transform: scale( 2.0 ); 가로와 세로 모두 2배 확대합니다. transform: scale( 2.0, 1.5 ); 가로로 2배, 세로로 1.5배 확대합니다. transform: scaleX( 2.0 ); 가로로 2배 확대합니다. transform: scaleX( 2.0 ) scaleY( 1.5 ); 가로로 2배, 세로로 1.5배 확대합니다. 예제 마우스를 올렸을 때 확대됩니다. 그 ...

CSS / 애니메이션 / animation / animation-direction - 진행 방향 정하는 속성

CSS / 애니메이션 / animation / animation-direction - 진행 방향 정하는 속성

animation-direction animation-direction은 애니메이션의 진행 방향 정하는 속성입니다. 애니메이션 관련 속성은 IE 버전 10 이상에서 사용할 수 있습니다. 문법 animation-direction: normal | reverse | alternate | alternate-reverse | initial | inherit normal : 기본값입니다. 정해진 순서로 진행합니다. reverse : 반대 순서로 진행합니다. alternate : 정해진 순서로 진행했다가 반대 순서로 진행합니다. alternate-reverse : 반대 순서로 진행했다가 정해진 순서로 진행합니다. initial : ...

CSS / border-radius / 테두리 둥글게 만드는 속성

CSS / border-radius / 테두리 둥글게 만드는 속성

border-radius border-radius는 테두리를 둥글게 만드는 속성입니다. CSS3에서 정의되었으며, IE는 버전 9부터 지원합니다.(IE8에서 사용하는 방법) 8개의 속성 값을 넣어야 하지만, 값이 같다면 짧게 쓸 수 있습니다. 다음 상자의 테두리를 여러 가지 방식으로 둥글게 만들어보겠습니다. <!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>CSS</title> <style> div { box-sizing: border-box; width: 200px; height: 200px; margin: 20px auto; background-color: orange; } </style> </head> <body> <div class="jb"></div> </body> </html> 문법 1 border-radius: top-left-x top-right-x bottom-right-x bottom-left-x / top-left-y top-right-y bottom-right-y bottom-left-y 속성의 ...

CSS / content / 요소 앞 또는 뒤에 문자열 등 콘텐트 만들기

CSS / content / 요소 앞 또는 뒤에 문자열 등 콘텐트 만들기

content 속성은 선택한 요소의 내용 앞이나 뒤에 콘텐트를 붙입니다. 예를 들어 p 요소 내용 앞에 콘텐트를 넣으려면 p:before { content: xxx; } 와 같이 하고, 뒤에 붙이려면 p:after { content: xxx; } 와 같이 합니다. content 속성을 이용하여 XXX라는 문자열을 넣으려면 다음과 같이 합니다. p:before { content: "XXX"; } 이미지를 넣고 싶다면 다음과 같이 합니다. p:before { content: ...

CSS / list-style-position / 목록의 마커 위치 정하는 속성

CSS / list-style-position / 목록의 마커 위치 정하는 속성

개요 list-style-position으로 ul, ol 등의 목록의 마커(marker)의 위치를 정합니다. 기본값 : outside 상속 : Yes 애니메이션 : No 버전 : CSS Level 1 문법 list-style-position: inside | outside | initial | inherit inside : 문단 안쪽에 놓습니다. outside : 문단 바깥쪽에 놓습니다. initial : 기본값으로 설정합니다. inherit : 부모 요소의 속성값을 상속받습니다. 예제 <!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> ...

CSS 강좌