: 배경 색상 지정
- Literal(리터럴) : red, blue, orange, black, white 등
: rgb(a, b, c) 함수 이용. 각 빨간색, 초록색, 파란색의 정도를 ( 0~ 255 ) 나타낸다.
: rgba(a, b, c, d) 함수 이용. 위 rgb(a, b, c) 함수 처럼 사용하되, d 값은 0% ~ 100%의 값으로 불투명도 지정.
- 0% : 완전 투명 ~ 100% : 완전 불투명
: #rrggbb형식으로 사용.
- rgb 함수에서 사용하는 값을 16진수로 전환하여 사용하는 방식.
- 가령, rgb(255, 255, 255) 는 #ffffff와 같다.
: #rrggbboo 형식으로 사용. 기본 HEX 사용 방법과 같으나 뒤에 불투명도를 지정하는 oo값을 함꼐 사용한다. ( 00 부터 ff 까지 )
<style> div:nth-child(1) { width: 300px; height: 300px; background-color: rgba(255, 0, 0, 50%); position: absolute; z-index: 1; } div:nth-child(2) { top: 150px; left: 150px; width: 300px; height: 300px; background-color: rgb(50, 100, 200); position: absolute; } </style> <body> <div></div> <div></div> </body>
- 불투명도 조절 예시
: 배경 이미지를 삽입할 때 사용한다. url 함수와 함께 사용한다.
- url("주소")
<style> div:nth-child(1) { width: 500px; height: 500px; background-color:lightpink; background-image: url(https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcS9TarsuTkaSmS-wdn5OL_lucLQArRnmWPr0Q&usqp=CAU); } </style>
: 배경 이미지 반복 설정
- repeat : 반복되게 한다.(기본값)
- repeat-x : 가로축으로만 반복되게 한다.
- repeat-y : 세로축으로만 반복되게 한다.
- no-repeat : 반복되지 않게 한다.
background-repeat: no-repeat;
추가
: 배경 이미지 위치 설정
- background-position: a ; 양방향에 대한 설정
- background-position: x y ; x축 y축에 대한 설정
background-position: center;
추가
: 배경 크기 설정
- (리터럴) : 가로크기 설정. 세코크기는 이미지 비율에 맞게 증가
- (리터럴) (리터럴) : 가로 / 세로 크기 지정. 이미지 비율 문제 발생 가능
- auto (리터럴) : 세로크기 설정. 가로 크기는 이미지 비율에 맞게 증감
- contain : 이미지가 잘리지 않는한도 내에서 가장 크게 표시
- cover : 요소의 빈 부분 없이 이미지를 표시할 수 잇는 가장 작은 크기 ( 요소 벗어날 수 있음)
background-size: contain;
추가
: 테두리
border: 2px solid rgb(0, 0, 0);
- 굵기, 스타일, 색상 순으로 지정한다. 스타일은 아래와 같다.
- solid : 실선
- dotted : 짧은 점선
- dashed : 점선
- border-top, border-right, border-bottom, border-left 사용 가능.
: 테두리 부드럽게
- border-top-right-radius, border-bottom-right-radius,
border-bottom-left-radius, border-top-left-radius 사용가능.
<style> div { width: 100px; height: 50px; border: 2px solid rgb(0, 0, 0); border-radius: 15px; } </style>
border-radius: 20px 5px 20px 5px;
사용 예시
- box-shadow : ( x축 오프셋 ) ( y축 오프셋 ) ( 퍼짐 반경 ) ( 그림자 반경 ) ( 색 )
- 그림자를 만들기 위함. 오프셋은 이동범위를 뜻한다.
<style> div { width: 100px; height: 100px; background-color: rgb(200, 255, 250); box-shadow: 0 0 16px 1px black; } </style>
box-shadow: 50px 0 16px 1px rgba(60, 60, 60, 50%);
=> 1px짜리의 그림자를 16px정도로 퍼트리겠다의 의미를 가진다.
: 요소의 크기 지정에 관한 방법 설정
- content-box : 요소의 내부 내용에 따른 크기 지정(기본값)
- border-box : 요소의 테두리 내용에 따른 크기 지정
<style>
div:nth-child(1) {
width: 100px;
background-color: black;
color: white;
}
div:nth-child(2) {
width: 100px;
height: 20px;
box-sizing: border-box;
background-color: red;
padding: 0 20px;
}
</style>
<body>
<div>나는 100px</div>
<div>아무 내용</div>
</body>
- 박스 사이징 적용 전
- 가로가 140px이다.
box-sizing: border-box;
적용 후
=> padding이 box안으로 들어가게된다.
양옆으로 padding 20px을 주더라도 100px로 유지하게 한다.
: 글씨 색상
<style> div:nth-child(1) { color: rgb(255, 0, 0); } div:nth-child(2) { color: rgb(0, 0, 255); } </style> <body> <div>가나다</div> <div>라바마</div> </body>
: 마우스 커서의 모양 지정
- default : (기본값) 기본 화살표 모양
- poiter : 클릭 손 모양
- text : I빔
- not-allowed : 금지
등등등......
: 요소 표시 상태 설정
- none: 보이지 않고 공간도 차지하지 않음
- block : 부모 요소의 가로 크기를 한줄 다 차지하게 된다.
- inline : 필요한 만큼 공간 차지(width, height 안 먹힘)
- inline-block : 필요한 만큼 공간 차지(width, height 작동)
<style> div { display: inline-block; } div:nth-child(1) { width: 100px; height: 100px; background-color: brown; } div:nth-child(2) { width: 100px; height: 100px; background-color: purple; } </style> <body> <div></div> <div></div> </body>
display: block;
: 서체 지정
https://fonts.google.com/?subset=korean
클릭!
- link 복사해와서 head에 추가한다.
- font-family 도 복사해서 style에 추가한다.
font-family: 'Reggae One', cursive;
font-family: 'Nanum Brush Script', 'Reggae One', cursive;
콤마로 구분하는 font-family는 우선순위를 말한다.
말로 예시를 들자면
만약 1번째가 일본어폰트였는데 히라가나 표시를 실패한 단어가 있을 시에
다음 폰트 패밀리로 넘겨져서 해당 폰트를 적용시켜버린다.
: 글씨 굵기 설정
가령, font-weight: 400; ....
: 글씨 크기(pt, px등)
: 요소 자체의 투명도 설정 0% ~ 100%
- 단, 내용 전체도 같이 투명해짐으로 배경 투영 목적으로 사용하면 안됨.
<style> div { width: 200px; height: 200px; background-color: rebeccapurple; opacity: 50%; color: black; } </style> <body> <div>글씨글씨글씨</div> </body>
< 예제 >
: hover시 사진과 글씨가 같은 자리에서 바뀌여야 한다.
- 조건
- margin 사용하지 말 것.
- top,left 사용하지 말 것.
- width와 height 값은 한 번만 사용할 것.
<style>
div {
width: 500px;
height: 300px;
background-image: url(https://velog.velcdn.com/images/zirccon/post/7fd1d61e-cc0e-4a58-b87d-12cbb5cdeee8/image.png);
background-size: cover;
background-position: center;
position: relative;
}
div:hover {
background-image: url(https://velog.velcdn.com/images/zirccon/post/8978068e-a0c7-424b-9106-87fafb5acdac/image.png);
}
div > span {
right: 0;
bottom: 0;
background-color: coral;
padding: 5px 20px;
position: absolute;
}
div:hover > span:nth-child(1) {
display: none;
}
div > span:nth-child(2) {
display: none;
}
div:hover > span:nth-child(2) {
display: inline;
}
</style>
<body>
<div>
<span>촛불입니다!!</span>
<span>파이리진화!!</span>
</div>––
</body>
- hover 전
- hover 후