You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 2-ui/1-document/15-metrics/article.md
+10-10Lines changed: 10 additions & 10 deletions
Original file line number
Diff line number
Diff line change
@@ -33,7 +33,7 @@
33
33
34
34
Результат выглядит так:
35
35
36
-
<imgsrc="metric-css.png">
36
+
<imgsrc="metric-css.svg">
37
37
38
38
Вы можете открыть [edit src="metric"]этот документ в песочнице[/edit].
39
39
@@ -64,7 +64,7 @@
64
64
Вот общая картина:
65
65
66
66
67
-
<imgsrc="metric-all.png">
67
+
<imgsrc="metric-all.svg">
68
68
69
69
На картинке все они с трудом помещаются, но, как мы увидим далее, их значения просты и понятны.
70
70
@@ -99,15 +99,15 @@
99
99
</main>
100
100
```
101
101
102
-
<imgsrc="metric-offset-parent.png">
102
+
<imgsrc="metric-offset-parent.svg">
103
103
104
104
## offsetWidth/Height
105
105
106
106
Теперь переходим к самому элементу.
107
107
108
108
Эти два свойства -- самые простые. Они содержат "внешнюю" ширину/высоту элемента, то есть его полный размер, включая рамки `border`.
109
109
110
-
<imgsrc="metric-offset-width-height.png">
110
+
<imgsrc="metric-offset-width-height.svg">
111
111
112
112
Для нашего элемента:
113
113
<ul>
@@ -152,7 +152,7 @@ function isHidden(elem)
152
152
<li>`clientTop = 25` -- ширина верхней рамки</li>
153
153
</ul>
154
154
155
-
<imgsrc="metric-client-left-top.png">
155
+
<imgsrc="metric-client-left-top.svg">
156
156
157
157
...Но на самом деле они -- вовсе не рамки, а отступ внутренней части элемента от внешней.
158
158
@@ -162,7 +162,7 @@ function isHidden(elem)
162
162
163
163
Получится так:
164
164
165
-
<imgsrc="metric-client-left-top-rtl.png">
165
+
<imgsrc="metric-client-left-top-rtl.svg">
166
166
167
167
168
168
## clientWidth/Height
@@ -171,7 +171,7 @@ function isHidden(elem)
171
171
172
172
Они включают в себя ширину содержимого `width` вместе с полями `padding`, но без прокрутки.
173
173
174
-
<imgsrc="metric-client-width-height.png">
174
+
<imgsrc="metric-client-width-height.svg">
175
175
176
176
На рисунке выше посмотрим вначале на `clientHeight`, её посчитать проще всего. Прокрутки нет, так что это в точности то, что внутри рамок: CSS-ширина `200px` плюс верхнее и нижнее поля `padding` (по `20px`), итого `240px`.
177
177
@@ -183,7 +183,7 @@ function isHidden(elem)
183
183
184
184
**Если `padding` нет, то `clientWidth/Height` в точности равны размеру области содержимого, внутри рамок и полосы прокрутки.**
185
185
186
-
<imgsrc="metric-client-width-nopadding.png">
186
+
<imgsrc="metric-client-width-nopadding.svg">
187
187
188
188
Поэтому в тех случаях, когда мы точно знаем, что `padding` нет, их используют для определения внутренних размеров элемента.
189
189
@@ -193,7 +193,7 @@ function isHidden(elem)
193
193
194
194
Свойства `clientWidth/clientHeight` относятся только к видимой области элемента, а `scrollWidth/scrollHeight` добавляют к ней прокрученную (которую не видно) по горизонтали/вертикали.
Следующее иллюстрация показывает значения `scrollHeight` и `scrollTop` для блока с вертикальной прокруткой.
225
225
226
-
<imgsrc="metric-scroll-top.png">
226
+
<imgsrc="metric-scroll-top.svg">
227
227
228
228
[smart header="`scrollLeft/scrollTop` можно изменять"]
229
229
В отличие от большинства свойств, которые доступны только для чтения, значения `scrollLeft/scrollTop` можно изменить, и браузер выполнит прокрутку элемента.
0 commit comments