Skip to content
This repository was archived by the owner on Oct 18, 2018. It is now read-only.

Commit 3416de0

Browse files
AlexAlex
authored andcommitted
Merge pull request #1 from Nitive/patch-2
Fix table of contents
2 parents 6ae08a4 + 472d63f commit 3416de0

File tree

1 file changed

+28
-19
lines changed

1 file changed

+28
-19
lines changed

README.md

Lines changed: 28 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22

33
*Наиболее разумный подход к CSS и Sass*
44

5-
## Содержание
5+
<h2 id="table-of-contents">Содержание</h2>
66

77
1. [Терминология](#terminology)
8-
- [Правила декларации](#rule-declaration)
8+
- [Объявление правил](#rule-declaration)
99
- [Селекторы](#selectors)
1010
- [Свойства](#properties)
1111
1. [CSS](#css)
@@ -22,11 +22,11 @@
2222
- [Миксины](#mixins)
2323
- [Extend directive](#extend-directive)
2424
- [Вложенные селекторы](#nested-selectors)
25-
1. [Переводы](#translation)
25+
1. [Переводы](#translations)
2626

27-
## Терминология
27+
<h2 id="terminology">Терминология</h2>
2828

29-
### Объявление правил
29+
<h3 id="rule-declaration">Объявление правил</h3>
3030

3131
"Объявление правил" это имя данное селектору (или группе селекторов) с сопутствующими ему свойствами. Например:
3232

@@ -37,7 +37,7 @@
3737
}
3838
```
3939

40-
### Селекторы
40+
<h3 id="selectors">Селекторы</h3>
4141

4242
В объявлении правил, "селекторы", это части которые определяют к какому элементу DOM дерева будут применены правила стилей. Селекторы могут соответствовать HTML элементу, а так-же классу элемента, ID или любому другому атрибуту этого элемента. Вот несколько примеров:
4343

@@ -52,7 +52,7 @@
5252
}
5353
```
5454

55-
### Свойства
55+
<h3 id="properties">Свойства</h3>
5656

5757
И наконец свойства, которые придают выбранным элементам их стиль. Свойства объявляются в виде пары "ключ-значение" и объявления правил могут содержать одно или несколько свойств. Объявление свойств может выглядеть так:
5858

@@ -66,7 +66,7 @@
6666

6767
## CSS
6868

69-
### Форматирование
69+
<h3 id="formatting">Форматирование</h3>
7070

7171
* Используйте 2 пробела для отступов.
7272
* Предпочитайте подчеркивание CamelCase'у в именах классов.
@@ -107,7 +107,7 @@
107107
}
108108
```
109109
110-
### Комментарии
110+
<h3 id="comments">Комментарии</h3>
111111
112112
* Предпочитайте однострочные (`//`) комментарии многострочным .
113113
* Рекомендуется писать комментарии в отдельные строки. Старайтесь избегать комментариев в конце строки.
@@ -116,7 +116,7 @@
116116
- Использование z-index
117117
- Совместимость с браузерами или CSS-хаки
118118
119-
### Объектно-ориентированный CSS и БЭМ
119+
<h3 id="oocss-and-bem">Объектно-ориентированный CSS и БЭМ</h3>
120120
121121
Мы рекомендуем комбинировать Объектно-ориентированный CSS и БЭМ по следующим причинам:
122122
@@ -167,13 +167,13 @@ function ListingCard() {
167167
* `.ListingCard__title` является "элементом" и представляет дочерний компонент `.ListingCard` который позволяет составить блок в целом.
168168
* `.ListingCard--featured` является "модификатором" и представляет разные состояния `.ListingCard`.
169169
170-
### Селекторы по ID
170+
<h3 id="id-selectors">Селекторы по ID</h3>
171171
172172
While it is possible to select elements by ID in CSS, it should generally be considered an anti-pattern. ID selectors introduce an unnecessarily high level of [specificity](https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity) to your rule declarations, and they are not reusable.
173173
Возможность выбирать элементы по ID в CSS является, как правило, плохой практикой. ID селекторы предоставляют неоправданно высокий уровень специфичности и невозможность многоразового использования.
174174
Более подробная информация по этому вопросу: [Статья CSS Wizardry](http://csswizardry.com/2014/07/hacks-for-dealing-with-specificity/)
175175
176-
### JavaScript хуки
176+
<h3 id="javascript-hooks">JavaScript хуки</h3>
177177
178178
Избегайте использования одинаковых имён классов в CSS и JavaScript. Использование одинаковых имён классов может привести, как минимум, к трате времени при рефакторинге, и как максимум к боязне разработчика сломать функционал вводом изменений.
179179
@@ -183,7 +183,7 @@ While it is possible to select elements by ID in CSS, it should generally be con
183183
<button class="btn btn-primary js-request-to-book">Request to Book</button>
184184
```
185185
186-
### Border
186+
<h3 id="border">Границы</h3>
187187
188188
Use `0` instead of `none` to specify that a style has no border.
189189
@@ -205,12 +205,12 @@ Use `0` instead of `none` to specify that a style has no border.
205205
206206
## Sass
207207
208-
### Синтаксис
208+
<h3 id="syntax">Синтаксис</h3>
209209
210210
* Всегда используйте `.scss` синтаксис, и никогда, оригинальный `.sass` синтаксис.
211211
* Упорядочивайте обычный CSS и `@include`-объявления логически.
212212
213-
### Порядок объявления свойств
213+
<h3 id="ordering-of-property-declarations">Порядок объявления свойств</h3>
214214
215215
1. Объявления свойств
216216
@@ -254,19 +254,26 @@ Use `0` instead of `none` to specify that a style has no border.
254254
}
255255
```
256256
257-
### Переменные
257+
<h3 id="variables">Переменные</h3>
258258
259259
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`).
260260
Отдавайте предпочтение именам переменных разделенных тире (например `$my-variable`). Допускается использование подчеркивания в виде префикса для имён которые будут использоваться в пределах одного файла (например `$_my-variable`).
261-
### Миксины
261+
262+
263+
<h3 id="mixins">Миксины</h3>
262264
263265
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.
264266
Миксины должны использоваться для поддержания чистоты и ясности кода, или абстрактной сложности, во многом так же, как и хорошо названные функции. Миксины не принимающие никаких аргументов могут быть полезны для этого, но нужно иметь в виду что если вы не сжимаете свои файлы (например gzip), это может привести к лишнему повторению кода.
265-
### Extend directive допилить
267+
268+
269+
<h3 id="extend-directive">Extend directive допилить</h3>
266270
267271
`@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.
268272
Использование `@extend` необходимо избегать из-за его неинтуитивного поведения и потенциальной опасности в поведение, особенно при использование вместе с вложенными селекторами. Даже *допилить* селекторов верхнего уровня может создать проблемы, если в будущем будет изменён порядок селекторов. Сжатие должно обрабатывать большую часть сбережений вы получили бы с помощью *допилить*.
273+
274+
269275
### Вложенные селекторы
276+
<h3 id="nested-selectors">Вложенные селекторы</h3>
270277
271278
**Do not nest selectors more than three levels deep!**
272279
**Вложенные селекторы не должны быть глубже трёх вложений**
@@ -296,7 +303,9 @@ Again: **never nest ID selectors!**
296303
И вновь: **никогда не используйте ID селекторы!**
297304
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.
298305
Если вы должны использовать ID селектор (вы действительно должно постараться этого не делать), он никогда не должен быть вложен. Если вы обнаружили это в своём коде, вам нужно пересмотреть разметку, или выяснить, почему нужна такая сильная специфика. Если вы пишете хорошо сформированные HTML и CSS, вы **никогда** не должны делать это.
299-
## Перевод
306+
307+
308+
<h2 id="translations">Переводы</h2>
300309
301310
This style guide is also available in other languages:
302311
Этот гид по стилю так-же доступен в других языках:

0 commit comments

Comments
 (0)