코딩 기록들
[FrontEnd] 10. Size & Unit, Responsive web, em / rem, Media query, Font Styling 본문
[FrontEnd] 10. Size & Unit, Responsive web, em / rem, Media query, Font Styling
코딩펭귄 2024. 3. 12. 17:41기기 / 브라우저별로 세팅해놓은 값들
Size & Unit
엘리먼트에 사용할 수 있는 단위들

position에 fixed가 할당되면 부모는 바로 viewport가 된다!!

min-width | max-width & min-height | max-height
- 최대 / 최소 사이즈를 지정할 수 있다
- element에 min/max width/height를 지정하면 -> viewport가 줄어들거나, 부모 element의 크기가 줄어들때 최대/최소 크기는 항상 유지된다
em / rem
- em : 부모 엘리먼트의 폰트 크기를 기준으로 비율 계산 (->계산이 쉽지않아서 잘 사용 안함)
- rem : 브라우저 사용자 설정 폰트 크기를 기준으로 비율 계산 (-> 이 방법을 훨신 많이 씀!)
Responsive web
-반응형 웹 디자인 : 다양한 크기의 Device 에서 하나의 웹 페이지를 표현하는 방법

Hardware pixels vs. Software pixels
- https://yesviz.com/viewport/
-> 기기별 물리적 픽셀(Device Resolution), 소프트웨어 픽셀(Viewport Size)을 정리한 사이트

Media query
- veiwport -> 브라우저의 body영역
- width -> 우리가 원하는 디바이스의 크기를 넣어준다
- width = device-width -> 기기의 길이와 소프트웨어 길이를 맞춰줌
- 초기에 보여질 화면의 배율 (원본사이즈 : 1.0)
@media
- 미디어 쿼리
- Viewport의 크기별로 다른 스타일을 지정하고 싶을 때 사용
- 반응형 웹의 가장 핵심적인 기능
- 사용방법
@media (min-width ~~rem){...}
@media (min-width: 40rem) { ... } → viewport width >= 40rem
- 처음에 모바일부터 만들고, 그 다음 데스크탑 용도를 만든다(하지만 대부분 데스크탑용 만들지 않음)
ex) B2C : naver, daum, google ..
@media (max-width ~~rem){...}
@media (max-width: 40rem) { ... } → viewport width <= 40rem
- max-width : 처음에 데스크탑기준으로 만든 후, 모바일전용 스타일을 정해주고 싶을 때 사용
ex) B2B : 데스크탑용으로 먼저 만든다 (망분리가 되어있기 때문에 모바일은 만들 수 없음)
style 적용 안되는 3가지
1) (input type) check box
2) radio button
3) select
--> style 적용하기 위해선 : appearance: none; 적용해줘야 됨

-> 이미지와 관련된 width, height 는 rem을 쓰면 안됨.
Font Styling
- 화면에 있는 글자, 글꼴등을 어떻게 꾸밀것인지 에 대한 것
Google Font 사용해보기
1. 사이트에서 마음에드는 글꼴 선택
2. get font -> download all 해서 압축 풀어주기

3. OFL.txt 파일이 있는지 확인하기


4. get embed code클릭 후 해당 부분 전체 복사해서 html파일에 붙여넣기

5.그 중 아래와 같이 font-family 부분을 css body블록에 넣어주기

body {
background-color: dimgray;
background-image: url("../assets/bg_tx.svg");
margin: 0;
height: 100%;
/*다운받은 하나의 폰트만 사용하는것은 안전하지 않다. 폰드를 링크로부터 불러오는데 시간이 소요되기 때문*/
font-family: "Noto Sans KR", sans-serif; /*noto sans kr가 없다면, sans-serif로 설정해라(대안)*/
}
'FrontEnd Programming' 카테고리의 다른 글
JavaScript_2. 함수 (0) | 2024.03.14 |
---|---|
JavaScript_1. 변수, 배열, 객체리터럴 (1) | 2024.03.14 |
[FrontEnd] 12. Grid (0) | 2024.03.12 |
[FrontEnd] 8. !important, Outline, Floating dom, z-index, Overflow (2) | 2024.03.08 |
[FrontEnd] 9. Position, Background (3) | 2024.03.08 |