А тут - всякий разный текст...
... В две строки!
@@ -165,7 +165,7 @@ position: absolute;
**В абсолютно позиционированном элементе можно одновременно задавать противоположные границы.**
-Браузер растянет такой элемент до границ. Работает везде, кроме IE6:
+Браузер растянет такой элемент до границ.
```html
@@ -218,7 +218,7 @@ div {
right: 0; bottom: 0; /* ..указанием противоположных границ */
}
```
-
+
С виду логично, но нет, не получится!
Координаты `top/right/left/bottom` вычисляются относительно *окна*. Значение `bottom: 0` -- нижняя граница окна, а не документа, блок растянется до неё. То есть, будет то же самое, что и в предыдущем примере.
@@ -244,10 +244,10 @@ div {
*/!*
-
+
Заголовок в правом-верхнем углу DIV'а.
-
Заголовок
+
Заголовок
А тут - всякий разный текст...
... В две строки!
@@ -330,8 +330,6 @@ position: fixed;
Много строк..
Много строк..
```
-Поддерживается во всех современных браузерах, в IE начиная с версии 7. Для реализации аналогичного функционала в IE6 используют CSS-выражения.
-
## Итого
@@ -355,7 +353,7 @@ position: fixed;
- Ширина элемента по умолчанию устанавливается по содержимому.
-- Можно указать противположные границы `left/right` (`top/bottom`). Элемент растянется. Возможность не поддерживается в IE7-.
+- Можно указать противположные границы `left/right` (`top/bottom`). Элемент растянется.
- Окружающие элементы заполняют освободившееся место.
diff --git a/8-css-for-js/6-css-center/article.md b/8-css-for-js/6-css-center/article.md
index e28f405e..a10ccf1a 100644
--- a/8-css-for-js/6-css-center/article.md
+++ b/8-css-for-js/6-css-center/article.md
@@ -40,23 +40,20 @@
```
-Впрочем, в примере выше блок будет центрирован в IE6,7 (это отклонение от стандарта).
-
### margin: auto
-Для всех браузеров, кроме IE6,7, блок по горизонтали центрируется `margin: auto`.:
+Блок по горизонтали центрируется `margin: auto`:
```html
@@ -390,7 +387,7 @@
Для горизонтального центрирования:
-- `text-align: center` -- центрирует инлайн-элементы в блоке. В IE7- центрирует всё, но это нестандартное поведение.
+- `text-align: center` -- центрирует инлайн-элементы в блоке.
- `margin: 0 auto` -- центрирует блок внутри родителя. У блока должна быть указана ширина.
diff --git a/8-css-for-js/7-font-size-line-height/article.md b/8-css-for-js/7-font-size-line-height/article.md
index 8c11ebed..24ac3731 100644
--- a/8-css-for-js/7-font-size-line-height/article.md
+++ b/8-css-for-js/7-font-size-line-height/article.md
@@ -8,7 +8,7 @@
`line-height` -- *высота строки*.
-Сделаем HTML, в котором шрифт и размер строки одинаковы:
+Для наглядности посмотрим пример HTML, в котором шрифт и размер строки одинаковы:
```html
@@ -17,22 +17,28 @@ body {
*!*
font-size: 30px;
font-family: monospace;
- line-height: 1em; /* 1em = размер шрифта = 30px */
+ line-height: 30px;
*/!*
}
-
Ёрш
-
Ёрш
+
Ёрш р
+
Ёрш Ё
```
-**Как видно из примера,`font-size` -- это абстрактное значение, которое привязано к шрифту, и даётся в типографских целях, это даже не "самая большая буква", а просто такая прикидка, чтобы было удобно планировать размер строки.**
+Размер шрифта `font-size` -- это абстрактное значение, которое привязано к шрифту, и даётся в типографских целях.
-При размере строки, равном `font-size`, строка не будет размером точно "под букву". В зависимости от шрифта, "хвосты" букв при этом могут вылезать, поэтому обычно размер строки делают чуть больше, чем шрифт.
+Обычно оно равно расстоянию от самой верхней границы букв до самой нижней, исключая "нижние хвосты" букв, таких как `р`, `g`. Как видно из примера выше, при размере строки, равном `font-size`, строка не будет размером точно "под букву".
+
+В зависимости от шрифта, "хвосты" букв при этом могут вылезать, правые буквы `Ё` и `р` в примере выше пересекаются как раз поэтому.
+
+В некоторых особо размашистых шрифтах "хвосты букв" могут быть размером с саму букву, а то и больше больше. Но это, всё же исключение.
+
+Обычно размер строки делают чуть больше, чем шрифт.
**По умолчанию в браузерах используется специальное значение `line-height:normal`.**
-Оно означает, что браузер может принимать решение о размере строки самостоятельно. Как правило, оно будет в диапазоне `1.0 - 1.25`, но стандарт не гарантирует этого, он говорит лишь, что оно должно быть "разумным" (reasonable).
+Оно означает, что браузер может принимать решение о размере строки самостоятельно. Как правило, оно будет в диапазоне `1.1 - 1.25`, но стандарт не гарантирует этого, он говорит лишь, что оно должно быть "разумным" (дословно -- англ. reasonable).
## Множитель для line-height
@@ -44,9 +50,11 @@ body {
- **Значение, заданное множителем, наследуется и применяется в каждом элементе относительно его размера шрифта.**
+
То есть, при `line-height: 2` означает, что высота строки будет равна удвоенному размеру шрифта, не важно какой шрифт.
- **Значение, заданное в единицах измерения, запоминается и наследуется "как есть".**
+
Это означает, что `line-height: 32px` будет всегда жёстко задавать высоту строки, даже если шрифт во вложенных элементах станет больше или меньше текущего.
diff --git a/8-css-for-js/8-white-space/article.md b/8-css-for-js/8-white-space/article.md
index 9b2d438f..e9d31c21 100644
--- a/8-css-for-js/8-white-space/article.md
+++ b/8-css-for-js/8-white-space/article.md
@@ -8,7 +8,7 @@
`white-space: pre` -- текст ведёт себя, как будто оформлен в тег `pre`.
-Но браузеры поддерживают ещё 3, два из которых -- только в IE8+ и очень полезны.
+Но браузеры поддерживают и другие, которые также бывают очень полезны.
[cut]
## pre / nowrap
@@ -19,19 +19,19 @@
**`pre`**:
-- **сохраняет пробелы**
-- **переносит текст при явном разрыве строки.**
+- Сохраняет пробелы.
+- Переносит текст при явном разрыве строки.
**`nowrap`**
-- **не сохраняет пробелы**
-- **игнорирует явные разрывы строки (не переносит текст).**
+- Не сохраняет пробелы.
+- Игнорирует явные разрывы строки (не переносит текст).
Оба этих значения поддерживаются кросс-браузерно.
-**Их основной недостаток -- текст вылезает из контейнера.**
+**Их основной недостаток -- текст может вылезти из контейнера.**
Для примера, рассмотрим следующий фрагмент кода:
@@ -45,7 +45,7 @@ if (hours > 18) {
**`white-space: pre`:**
[pre]
-if (hours > 18) {
+
if (hours > 18) {
// Пойти поиграть в теннис
}
@@ -56,7 +56,7 @@ if (hours > 18) {
**`white-space: nowrap`:**
[pre]
-if (hours > 18) {
+
if (hours > 18) {
// Пойти поиграть в теннис
}
@@ -68,14 +68,12 @@ if (hours > 18) {
Допустим, мы хотим разрешить посетителям публиковать код на сайте, с сохранением разметки. Но тег `PRE` и описанные выше значения `white-space` для этого не подойдут!
-Злой Василий Пупкин может написать такой текст, который вылезет из контейнера и поломает вёрстку страницы.
+Злой посетитель Василий Пупкин может написать такой текст, который вылезет из контейнера и поломает вёрстку страницы.
Можно скрыть вылезшее значение при помощи `overflow-x: hidden` или сделать так, чтобы была горизонтальная прокрутка, но, к счастью, есть другие значения `white-space`, специально для таких случаев.
## pre-wrap/pre-line
-Эти значения не поддерживаются в IE7-.
-
- `pre-wrap`
- То же самое, что `pre`, но переводит строку, если текст вылезает из контейнера.
@@ -89,7 +87,7 @@ if (hours > 18) {
**`white-space: pre-wrap`:**
[pre]
-if (hours > 18) {
+
if (hours > 18) {
// Пойти поиграть в теннис
}
@@ -100,7 +98,7 @@ if (hours > 18) {
**`white-space: pre-line`:**
[pre]
-if (hours > 18) {
+
if (hours > 18) {
// Пойти поиграть в теннис
}
@@ -110,13 +108,14 @@ if (hours > 18) {
-Никто не мешает использовать эти значения на сайте, а для IE7- игнорировать проблему или задавать контейнеру `overflow-x: hidden`.
+Целесообразно использовать эти значения на сайте там, где текст пишется пользователями.
+[head]
\ No newline at end of file
+
+[/head]
\ No newline at end of file