Post

CSS RESET

andy Bell이 작성한 modern css reset한국어로 번역한 글을 읽고 작성한 글

📘폰트 크기의 팽창을 방지

1
2
3
4
5
6
/* 폰트 크기의 팽창을 방지합니다. */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

kilian-text-size-adjust
모바일 가로형 디바이스에서 페이지가 부풀려져서 보일 때, 폰트가 팽창되는 것을 방지하기 위한 스타일 값

  • 접두사가 없는 코드: 크롬은 접두사를 붙지 않은 버전만 지원
  • 접두사가 있는 코드: 사파리는 접두사가 붙은 버전만 지원

📘제목에 대한 text-wrap을 balance로 설정

1
2
3
4
5
6
7
/* 제목에 대한 text-wrap을 balance로 설정합니다. */
h1,
h2,
h3,
h4 {
  text-wrap: balance;
}

[mdn]text-wrap
text-wrap은 요소 내부의 텍스트가 줄바꿈되는 방식을 제어

  • wrap: 줄바꿈 (기본값)
  • nowrap: 줄바꿈하지 않음
  • balance: 각 줄의 문자 수에 가장 적합한 방식으로 줄바꿈
  • pretty: 줄바꿈, 성능보다 더 나은 레이아웃을 선호할 때 사용

📘고정된 모든 항목에는 여분의 스크롤 여백이 있어야 함

1
2
3
4
/* 고정된 모든 항목에는 여분의 스크롤 여백이 있어야 합니다. */
:target {
  scroll-margin-block: 5ex;
}

scroll-margin-block: 요소의 스크롤 여백을 설정

전체코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
/* box-sizing 규칙을 명시합니다. */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* 폰트 크기의 팽창을 방지합니다. */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* 기본 여백을 제거하여 작성된 CSS를 더 잘 제어할 수 있습니다. */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin-block-end: 0;
}

/* list를 role값으로 갖는 ul, ol 요소의 기본 목록 스타일을 제거합니다. */
ul[role="list"],
ol[role="list"] {
  list-style: none;
}

/* 핵심 body의 기본값을 설정합니다. */
body {
  min-height: 100vh;
  line-height: 1.5;
}

/* 제목 요소와 상호작용하는 요소에 대해 line-height를 더 짧게 설정합니다. */
h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}

/* 제목에 대한 text-wrap을 balance로 설정합니다. */
h1,
h2,
h3,
h4 {
  text-wrap: balance;
}

/* 클래스가 없는 기본 a 태그 요소는 기본 스타일을 가져옵니다. */
a:not([class]) {
  text-decoration-skip-ink: auto;
  color: currentColor;
}

/* 이미지 관련 작업을 더 쉽게 합니다. */
img,
picture {
  max-width: 100%;
  display: block;
}

/* input 및 button 항목들이 글꼴을 상속하도록 합니다. */
input,
button,
textarea,
select {
  font: inherit;
}

/* 행 속성이 없는 textarea가 너무 작지 않도록 합니다. */
textarea:not([rows]) {
  min-height: 10em;
}

/* 고정된 모든 항목에는 여분의 스크롤 여백이 있어야 합니다. */
:target {
  scroll-margin-block: 5ex;
}
This post is licensed under CC BY 4.0 by the author.