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: README.md
+21-21Lines changed: 21 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -39,7 +39,7 @@
39
39
40
40
<h3id="selectors">Селекторы</h3>
41
41
42
-
В объявлении правил, "селекторы", это части которые определяют к какому элементу DOM дерева будут применены правила стилей. Селекторы могут соответствовать HTML элементу, а так-же классу элемента, ID или любому другому атрибуту этого элемента. Вот несколько примеров:
42
+
В объявлении правил "селекторы" - это части, которые определяют, к какому элементу DOM дерева будут применены правила стилей. Селекторы могут соответствовать HTML элементу, а также классу элемента, ID или любому другому атрибуту этого элемента. Вот несколько примеров:
43
43
44
44
45
45
```css
@@ -54,7 +54,7 @@
54
54
55
55
<h3id="properties">Свойства</h3>
56
56
57
-
И наконец свойства, которые придают выбранным элементам их стиль. Свойства объявляются в виде пары "ключ-значение" и объявления правил могут содержать одно или несколько свойств. Объявление свойств может выглядеть так:
57
+
И, наконец, свойства, которые придают выбранным элементам их стиль. Свойства объявляются в виде пары "ключ-значение", объявления правил могут содержать одно или несколько свойств. Объявление свойств может выглядеть так:
58
58
59
59
60
60
```css
@@ -68,14 +68,14 @@
68
68
69
69
<h3id="formatting">Форматирование</h3>
70
70
71
-
* Используйте 2 пробела для отступов.
71
+
* Используйте 2 пробела для отступа.
72
72
* Предпочитайте подчеркивание CamelCase'у в именах классов.
73
73
- Подчеркивания и PascalCasing допустимы, если вы используете БЭМ (смотри [Объектно-ориентированный CSS и БЭМ](#oocss-and-bem) далее)
74
74
* Не используйте селекторы по ID.
75
-
* Используя несколько селекторов в объявлении правила, переносите каждый селектор на отдельную строку.
75
+
* Используя несколько селекторов в объявлении правила переносите каждый селектор на отдельную строку.
76
76
<!--* Ставьте пробел перед открывающей скобкой `{`.
77
77
* В свойствах ставьте пробел после двоеточия `:`, но не перед.
78
-
* После объявления свойстав переносите закрывающую скобку `}` на новую строку.
78
+
* После объявления свойства переносите закрывающую скобку `}` на новую строку.
79
79
* Делайте отступ в одну строку между объявлениями правил.
* Рекомендуется писать комментарии в отдельные строки. Старайтесь избегать комментариев в конце строки.
114
114
* Write detailed comments for code that isn't self-documenting:
115
115
* Пишите детальные комментарии для незадокументированных частей кода:
@@ -126,15 +126,15 @@
126
126
* Способствует созданию масштабируемых таблиц стилей.
127
127
128
128
129
-
**OOCSS**, или "Объектно-ориентированный CSS", это подход к написанию CSS, который призывает думать о таблице стилей, как о коллекции "объектов": многоразовых, повторяемых фрагментах кода, которые могут использоваться независимо друг от друга на всём сайте.
129
+
**OOCSS**, или "Объектно-ориентированный CSS" - это подход к написанию CSS, который призывает думать о таблице стилей как о коллекции "объектов": многоразовых, повторяемых фрагментах кода, которые могут использоваться независимо друг от друга на всём сайте.
* Smashing Magazine [Введение в Объектно-ориентированный CSS](http://www.smashingmagazine.com/2011/12/12/an-introduction-to-object-oriented-css-oocss/)
132
132
133
-
**БЭМ**, или "Блок-Элемент-Модификатор", это соглашение об именовании классов в HTML и CSS. Разработано Яндексом с прицелом на большие объёмы кода и масштабируемость. Может послужить как солидный набор правил для использования OOCSS.
133
+
**БЭМ**, или "Блок-Элемент-Модификатор" - это соглашение об именовании классов в HTML и CSS. Разработано Яндексом с прицелом на большие объёмы кода и масштабируемость. Может послужить как солидный набор правил для использования OOCSS.
* Harry Roberts [Введение в БЭМ](http://csswizardry.com/2013/01/mindbemding-getting-your-head-round-bem-syntax/)
136
136
137
-
Мы рекомендуем вариант БЭМ в котором используется PascalCased "блоки", отлично работающие в связке с компонентами (например React).
137
+
Мы рекомендуем вариант БЭМ, в котором используются PascalCased "блоки", отлично работающие в связке с компонентами (например React).
138
138
Подчеркивания и тире по-прежнему используются для модификаторов и элементов.
139
139
**Примеры**
140
140
@@ -164,19 +164,19 @@ function ListingCard() {
164
164
```
165
165
166
166
* `.ListingCard` является "блоком" и представляет родительский компонент
167
-
* `.ListingCard__title` является "элементом" и представляет дочерний компонент `.ListingCard` который позволяет составить блок в целом.
167
+
* `.ListingCard__title` является "элементом" и представляет дочерний компонент `.ListingCard`, который позволяет составить блок в целом.
168
168
* `.ListingCard--featured` является "модификатором" и представляет разные состояния `.ListingCard`.
169
169
170
170
<h3 id="id-selectors">Селекторы по ID</h3>
171
171
172
-
Возможность выбирать элементы по ID в CSS является, как правило, плохой практикой. ID селекторы предоставляют неоправданно высокий уровень специфичности и невозможность многоразового использования.
172
+
Возможность выбирать элементы по ID в CSS является, как правило, плохой практикой. ID селекторы предоставляют неоправданно высокий уровень специфичности и невозможность многоразового использования.
173
173
Более подробная информация по этому вопросу: [Статья CSS Wizardry](http://csswizardry.com/2014/07/hacks-for-dealing-with-specificity/)
174
174
175
175
<h3 id="javascript-hooks">JavaScript хуки</h3>
176
176
177
-
Избегайте использования одинаковых имён классов в CSS и JavaScript. Использование одинаковых имён классов может привести, как минимум, к трате времени при рефакторинге, и как максимум к боязне разработчика сломать функционал вводом изменений.
177
+
Избегайте использования одинаковых имён классов в CSS и JavaScript. Использование одинаковых имён классов может привести, как минимум, к потере времени при рефакторинге, и как максимум к боязне разработчика сломать функционал вводом изменений.
178
178
179
-
Мы реккомендуем создавать отдельные имена классов для JavaScript используя префикс `.js-`:
179
+
Мы рекомендуем создавать отдельные имена классов для JavaScript используя префикс `.js-`:
180
180
181
181
```html
182
182
<button class="btn btn-primary js-request-to-book">Request to Book</button>
@@ -206,7 +206,7 @@ Use `0` instead of `none` to specify that a style has no border.
206
206
207
207
<h3 id="syntax">Синтаксис</h3>
208
208
209
-
* Всегда используйте `.scss` синтаксис, и никогда, оригинальный `.sass` синтаксис.
209
+
* Всегда используйте `.scss` синтаксис, и никогда оригинальный `.sass` синтаксис.
210
210
* Упорядочивайте обычный CSS и `@include`-объявления логически.
@@ -239,7 +239,7 @@ Use `0` instead of `none` to specify that a style has no border.
239
239
3. Вложенные селекторы
240
240
241
241
Nested selectors, _if necessary_, go last, and nothing goes after them. Add whitespace between your rule declarations and nested selectors, as well as between adjacent nested selectors. Apply the same guidelines as above to your nested selectors.
242
-
Вложенные селекторы, _если необходимо_, идут последними, и ничего не должно быть после них. Добавьте пробел между объявлением правила и вложенным селектором, а так-же между смежными вложенными селекторами. Применяйте эти принципы, к вашим вложенным селекторам.
242
+
Вложенные селекторы, _если необходимо_, идут последними, и ничего не должно идти после них. Добавьте пробел между объявлением правила и вложенным селектором, а также между смежными вложенными селекторами. Применяйте эти принципы, к вашим вложенным селекторам.
243
243
244
244
```scss
245
245
.btn {
@@ -256,19 +256,19 @@ Use `0` instead of `none` to specify that a style has no border.
256
256
<h3 id="variables">Переменные</h3>
257
257
258
258
Prefer dash-cased variable names (e.g. `$my-variable`) over camelCased or snake_cased variable names. It is acceptable to prefix variable names that are intended to be used only within the same file with an underscore (e.g. `$_my-variable`).
259
-
Отдавайте предпочтение именам переменных разделенных тире (например `$my-variable`). Допускается использование подчеркивания в виде префикса для имён которые будут использоваться в пределах одного файла (например `$_my-variable`).
259
+
Отдавайте предпочтение именам переменных разделенных тире (например `$my-variable`). Допускается использование подчеркивания в виде префикса для имён, которые будут использоваться в пределах одного файла (например `$_my-variable`).
260
260
261
261
262
262
<h3 id="mixins">Миксины</h3>
263
263
264
264
Mixins should be used to DRY up your code, add clarity, or abstract complexity--in much the same way as well-named functions. Mixins that accept no arguments can be useful for this, but note that if you are not compressing your payload (e.g. gzip), this may contribute to unnecessary code duplication in the resulting styles.
265
-
Миксины должны использоваться для поддержания чистоты и ясности кода, или абстрактной сложности, во многом так же, как и хорошо названные функции. Миксины не принимающие никаких аргументов могут быть полезны для этого, но нужно иметь в виду что если вы не сжимаете свои файлы (например gzip), это может привести к лишнему повторению кода.
265
+
Миксины должны использоваться для поддержания чистоты и ясности кода, или абстрактной сложности, во многом так же, как и хорошо названные функции. Миксины, не принимающие никаких аргументов, могут быть полезны для этого. Но нужно иметь в виду, что если вы не сжимаете свои файлы (например gzip), это может привести к лишнему повторению кода.
`@extend` should be avoided because it has unintuitive and potentially dangerous behavior, especially when used with nested selectors. Even extending top-level placeholder selectors can cause problems if the order of selectors ends up changing later (e.g. if they are in other files and the order the files are loaded shifts). Gzipping should handle most of the savings you would have gained by using `@extend`, and you can DRY up your stylesheets nicely with mixins.
271
-
Использование `@extend` необходимо избегать из-за его неинтуитивного поведения и потенциальной опасности в поведение, особенно при использование вместе с вложенными селекторами. Даже *допилить* селекторов верхнего уровня может создать проблемы, если в будущем будет изменён порядок селекторов. Сжатие должно обрабатывать большую часть сбережений вы получили бы с помощью *допилить*.
271
+
Использование `@extend` необходимо избегать из-за его неинтуитивности и потенциальной опасности в поведении, особенно при использование вместе со вложенными селекторами. Даже *допилить* селекторов верхнего уровня может создать проблемы, если в будущем будет изменён порядок селекторов. Сжатие должно обрабатывать большую часть сбережений вы получили бы с помощью *допилить*.
272
272
273
273
274
274
### Вложенные селекторы
@@ -288,7 +288,7 @@ Mixins should be used to DRY up your code, add clarity, or abstract complexity--
288
288
```
289
289
290
290
When selectors become this long, you're likely writing CSS that is:
291
-
Когда селекторы становятся слишком длинными, скорее всего вы пишите CSS который:
291
+
Когда селекторы становятся слишком длинными, скорее всего вы пишете CSS, который:
292
292
293
293
* Strongly coupled to the HTML (fragile) *—OR—*
294
294
* Слишком сильно привязан к HTML (хрупкий) *—OR—*
@@ -301,12 +301,12 @@ When selectors become this long, you're likely writing CSS that is:
301
301
Again: **never nest ID selectors!**
302
302
И вновь: **никогда не используйте ID селекторы!**
303
303
If you must use an ID selector in the first place (and you should really try not to), they should never be nested. If you find yourself doing this, you need to revisit your markup, or figure out why such strong specificity is needed. If you are writing well formed HTML and CSS, you should **never** need to do this.
304
-
Если вы должны использовать ID селектор (вы действительно должно постараться этого не делать), он никогда не должен быть вложен. Если вы обнаружили это в своём коде, вам нужно пересмотреть разметку, или выяснить, почему нужна такая сильная специфика. Если вы пишете хорошо сформированные HTML и CSS, вы **никогда** не должны делать это.
304
+
Если вы должны использовать ID селектор (вы действительно должно постараться этого не делать), он никогда не должен быть вложенным. Если вы обнаружили это в своём коде - вам нужно пересмотреть разметку или выяснить, почему нужна такая сильная специфика. Если вы пишете хорошо сформированные HTML и CSS, вы **никогда** не должны делать это.
305
305
306
306
307
307
<h2 id="translations">Переводы</h2>
308
308
309
309
This style guide is also available in other languages:
310
-
Этот гид по стилю так-же доступен в других языках:
0 commit comments