728x90
반응형

요소는 내용(content), 패딩(padding), 테두리(border)로 이루어져 있다. Padding은 내용과 테두리 사이의 공간이다.

Margin은 요소 주위의 여백, 즉 테두리 밖의 공간이다.

 

Margin과 Padding 사용법

padding은 다음과 같이 사용한다.

p {
  padding: 위 오른쪽 아래 왼쪽;
}
p {
  padding: 20px 60px 40px 120px;
}

위, 아래, 왼쪽, 오른쪽이 다 같은 경우

만약 위, 아래, 왼쪽, 오른쪽에 똑같은 padding을 주고 싶으면 더 간편하다. 모두 50px의 padding을 주려면 이렇게 하면 된다.

p {
  padding: 50px;
}

 

Margin도 사용방법이 같기 때문에 따로 코드를 보여주진 않겠다.

 

요소를 가운데 정렬하고 싶으면 왼쪽과 오른쪽 margin 값을 auto로 설정해줘야 한다. auto는 말 그대로 '자동으로 계산'하라는 뜻이다. 왼쪽과 오른쪽을 auto로 설정하면 자동으로 왼쪽과 오른쪽으로 똑같이 함으로써 요소는 가운데 정렬이 된다.

p {
  margin-left: auto;
  margin-right: auto;
}

Overflow 정리

width, height, max-width, max-height 등을 설정하다 보면 내용물이 들어갈 공간이 부족한 경우가 생긴다. 그럴때 overflow를 사용하여 보여주던가 scroll하던가 숨겨주던가 한다.

 

1. visible : 넘쳐나는 내용물이 그대로 보여진다. 디폴트 값이다.

p {
  overflow: visible;
}

2. hidden : 넘쳐나는 부분 아예 숨기기

p {
  overflow: hidden;
}

3. scroll : 내용물을 숨겼다가, 사용자가 스크롤을 하면 볼 수 있게 해주는 방법

p {
  overflow: scroll;
}

4. auto : scroll과 거의 똑같음. scroll은 항상 스크롤바를 보여주고, auto는 내용물이 넘쳐날 때만 스크롤바 보여줌

p {
  overflow: auto;
}

border 정리

border 속성 값을 쓰는 순서는 굵기, 스타일(실선, 점선 등), 색.

.p1 {
  border: 2px solid #4d9fff;
}

아니면 명확하게 나눠서 사용하면 된다.

border-width , border-style, border-color 순서대로 이다.

 

border-style 에는 dotted, dashed, solid 등이 있다.

 

border를 없애기 위해서는 

border: none;

border: 0;

둘 중 하나를 사용하면 된다.


박스 꾸미는 몇 가지 방법

1. border-radius -> 둥근 모서리 쓰기

(border-top-left-radius, border-top-right-radius, border-bottom-right-radius 이런식으로 각 모서리를 개별 설정 가능)

 

2. backgroud-color -> 배경색 사용하기

 

3. backgroud-color: transparent -> 배경색 투명하게

 

4. box-shadow: 10px 10px 10px 10px red-> 그림자 입히기

(순서대로 1. 위쪽 2. 오른쪽 3. 흐리게 나오는 정도(blur : 기본값 0px) 4. 그림자 크기 설정(spread) 5. 색깔)


box - sizing

width와 height가 border, padding을 뺀 내용물의 크기만 나타나기 때문에 결과물은 달라질 수 있다. width, padding, border를 쓰다보면 원하는 가로 길이를 계산하기 귀찮아지기 때문에 box-sizing으로 간편하게 할 수 있다. 기본값은 box-sizing:content-box;이다.

h1{
 box-sizing:content-box;
}

box-sizing: border-box; 는 너무 편리해서 자주 사용한다.

모든 요소에 쓰고 싶으면 *을 쓰고 속성을 써주면 된다.

*{
 box-sizing:border-box;
}

배경 이미지

background-image:url("")

1. background-repeat

 이미지를 반복시킬 것인지 아닐 것인지, 그리고 반복시킨다면 어떤 방식으로 반복시킬 것인지 정해주는 속성이다.

/* 반복하지 않음 */
background-repeat: no-repeat;

/* 가로 방향으로만 반복 */
background-repeat: repeat-x;

/* 세로 방향으로만 반복 */
background-repeat: repeat-y;

/* 가로와 세로 모두 반복 */
background-repeat: repeat;

/* 반복할 수 있는 만큼 반복한 뒤, 남는 공간은 이미지 간의 여백으로 배분 */
background-repeat: space;

/* 반복할 수 있는 만큼 반복한 뒤, 남는 공간은 이미지 확대를 통해 배분 */
background-repeat: round;

 

2. background-size

 배경 이미지의 사이즈를 정해주는 속성이다.

/* 원래 이미지 사이즈대로 출력 */
background-size: auto;

/* 화면을 꽉 채우면서, 사진 비율을 유지 */
background-size: cover;

/* 가로, 세로 중 먼저 채워지는 쪽에 맞추어서 출력 */
background-size: contain;

/* 픽셀값 지정 (가로: 30px, 세로: 50px로 설정) */
background-size: 30px 50px;

/* 퍼센트값 지정 (가로: 부모 요소 width의 60%, 세로: 부모 요소 height의 70%로 설정) */
background-size: 60% 70%;

 

3. background-position

 배경 이미지의 위치를 정해주는 속성이다.

/* 단어로 지정해주기 (가로: left, center, right, 세로: top, center, bottom) */
/* 아래와 같은 총 9개의 조합이 가능 */
background-position: left top;
background-position: left center;
background-position: left bottom;
background-position: right top;
background-position: right center;
background-position: right bottom;
background-position: center top;
background-position: center center;
background-position: center bottom;

/* 퍼센트로 지정해주기 (가로: 전체 width의 25% 지점, 세로: 전체 height의 75% 지점 ) */
background-position: 25% 75%;

/* 픽셀로 지정하기 (가로: 가장 왼쪽 가장자리에서부터 오른쪽으로 100px 이동한 지점, 세로: 가장 상단 가장자리에서 아래로 200px 이동한 지점) */
background-position: 100px 200px;
728x90
반응형

'프론트엔드 > HTML CSS' 카테고리의 다른 글

CSS 포지셔닝  (0) 2021.04.13
display 속성  (0) 2021.04.11
CSS 활용하기  (0) 2021.04.11
HTML, CSS, JavaScript  (0) 2021.04.02

+ Recent posts