@WebProgrammingRu

Страница 467 из 556
Kopyl
12.03.2017
11:26:32


ну на скриншоте это есть, да
Я хочу их быстро вставлять в код без прописывание @include

Слишком геморно это

Igor
12.03.2017
11:27:18
ну вот вверху пример синтаксиса sass для создания и испоользования миксина

Google
Igor
12.03.2017
11:28:47
только то, что у тебя на скриншоте — скорее, наследование, а не миксины

Igor
12.03.2017
11:29:06


Kopyl
12.03.2017
11:29:49
Нет. Когда я пишу @inclide block, у меня вставляются все свойства и значения

Igor
12.03.2017
11:30:23
https://sass-scss.ru/guide/ изучи

Kopyl
12.03.2017
11:30:42
Igor
12.03.2017
11:31:01
не вижу

Kopyl
12.03.2017
11:31:08
Не понимаю как

Сначала задаю название после «=»?

А зачем мне еще переменную в скобки кидать?

Ааа

Зачем все усложнять, если можно вот так вот для моих целей?) =red color: green div +red

Igor
12.03.2017
11:33:52
про это я тебе и кидал

Google
Kopyl
12.03.2017
11:34:44
KarmaBot
12.03.2017
11:34:44
Спасибо (+1) для @nutcase принято! Текущая карма +24

Kopyl
12.03.2017
11:35:01
Я просто хз зачем все это, если есть автопрефиксер)

Igor
12.03.2017
11:35:32
это просто ПРИМЕР синтаксиса

Илья
12.03.2017
11:41:53
Igor
12.03.2017
11:48:44
Gregory
12.03.2017
12:06:40
Зачем все усложнять, если можно вот так вот для моих целей?) =red color: green div +red
все верно. Миксины бывают как с аргументами так и без них. Просто задаешь миксин =some_mixin разные свойства и потом просто там где нужно вставить некоторые стили, которые ты добавил в миксин, вставляешь его как свойство .your-selector +some_mixin porp: val porp: val porp: val

если же тебе нужно делать какие-то блоки, но которые будут отличаться скажем цветом фона, то задаешь миксину аргумент

KarmaBot
12.03.2017
12:07:42
Спасибо (+1) для @GriNAME принято! Текущая карма +36

Gregory
12.03.2017
12:08:37
Спасибо большое! Зачем тогда в документации расписывается, что миксины задаются так: @mixin block width:10px height: 10px
есть просто два способа создать и использовать миксин. Обычный и сокращенный

Kopyl
12.03.2017
12:09:10
есть просто два способа создать и использовать миксин. Обычный и сокращенный
Убрать бы обычный способ и доков и не парить тупым новичкам как я мозги :)

Gregory
12.03.2017
12:11:17
Это как?) И почему бы просто не перенаследовать стили?)
потому что наследование это не так удобно. Вот пример: =button($color) bacground-color: $color prop: val prop: val это микси который оформляет твою кнопку и в скобках ты просто передаешь цвет, какого цвета она будет

Konstantin
12.03.2017
12:11:23
так, просто напомню, что помимо вводного гайда на русском, на этом сайте есть и какая-никакая документация... тоже на русском :)

https://sass-scss.ru/documentation/

Kopyl
12.03.2017
12:11:30
https://sass-scss.ru/documentation/miksini/argumenti.html Оно?

Gregory
12.03.2017
12:12:01
да

Илья
12.03.2017
12:12:01
Пройдите этот тест от Google, чтобы узнать идеальное оформление для своего смартфона: https://goo.gl/wM3Usu

Google
Kopyl
12.03.2017
12:12:31
``=button($color) bacground-color: red/$color prop: val prop: val`

Илья
12.03.2017
12:12:32
ты хочешь поменять красный на другой, потом?

Kopyl
12.03.2017
12:12:37
Что-то типа этого

Gregory
12.03.2017
12:12:38
задать аргументу занчение по умолчанию

Илья
12.03.2017
12:12:52
а ну Гри уже ответил ☺️

Gregory
12.03.2017
12:13:01
=button($color: red)

Kopyl
12.03.2017
12:13:17
=button($color: red)
Ааааа, спасибо большо, то, что нужно!!!)

KarmaBot
12.03.2017
12:13:18
Спасибо (+1) для @GriNAME принято! Текущая карма +37

Gregory
12.03.2017
12:13:24
и если в скобки аргумент не передавать, то тогда будет всегда красный

Kopyl
12.03.2017
12:16:01


и если в скобки аргумент не передавать, то тогда будет всегда красный
И еще одно, как сделать так, чтобы не указывать в свойствах элемента первый аргумент? Чтобы считывался только второй.

Т е как править поочередность использования аргументов?)

Gregory
12.03.2017
12:17:25
никак

можно в миксин добавить условие =mixin($color: red, $shadow: value) @if $color == 0 $color: red prop: val prop: val

и тогда если над пропустить свойство, ставишь нолик

или то что определишь

Konstantin
12.03.2017
12:23:16
Google
Илья
12.03.2017
12:24:01
Т е как править поочередность использования аргументов?)
никак, можно поставить запятую (не помню скомпилится ли, но вроде да)

Kopyl
12.03.2017
12:25:02
можно в миксин добавить условие =mixin($color: red, $shadow: value) @if $color == 0 $color: red prop: val prop: val
Но тогда если я не буду включать потом аргументы, у меня не будет этого свойства





А если так пишу, то все ок div.button +block(0, 10px, red)

О, а если @else

Ого, а я ведь не умел им пользоваться

Как-то интуитивно понял)

=block($width: 100px, $height: 100px, $background: black) @if $width == 0 width: 100px @else width: $width height: $height background-color: $background

Gregory
12.03.2017
12:32:50
А если так пишу, то все ок div.button +block(0, 10px, red)
ну так я и говорю, что пропустить аргумент нельзя, можно просто придумать какой-то значек который будет вставлять свойство по умолчанию если тебе надо поменять второй аргумент

Admin
ERROR: S client not available

Kopyl
12.03.2017
12:33:17
=block($width: 100px, $height: 100px, $background: black) @if $width == 0 width: 100px @else width: $width @if $height == 0 height: 100px @else height: $height @if $background == 0 background-color: black @else background-color: $background

div.button +block(100px, 30px, red)

Gregory
12.03.2017
12:33:40
а раз у тебя ширина и высота одинаковые то объедини их

Kopyl
12.03.2017
12:33:41
Теперь я могу быстро вставлять блоки) Круто)

Примерно понял, сейчас попробую

в if else?

Gregory
12.03.2017
12:34:56
=block($size: 100px, $background: black) height: $size width: $size другие свойства

Google
Gregory
12.03.2017
12:35:37
это получается миксин квадрата, даешь размер и он задается для ширины и высоты

Kopyl
12.03.2017
12:36:01
@if $width == 0, $height == 0 width: 100px height: 100px @else width: $width height: $height

Gregory
12.03.2017
12:37:00
у тебя ширина и высота может быть разными?

Gregory
12.03.2017
12:38:14
вообще миксины так не делают, когда есть аргумент для каждого свойства

для таких случаев не надо усложнять и просто писать свойства без миксинов

обычно у тебя несколько свойст и парочка из них может меньяться. Вот так да, миксин нужен. А для твоего примера проще писать свойства без миксинов

Gregory
12.03.2017
12:41:53
там не запятые а or и and

Kopyl
12.03.2017
12:42:24
там не запятые а or и and
http://stackoverflow.com/questions/17225229/using-multiple-conditions-and-in-sass-if-statement Уже нашел, но спасиб :)

KarmaBot
12.03.2017
12:42:24
Спасибо (+1) для @GriNAME принято! Текущая карма +38

Kopyl
12.03.2017
12:44:17
там не запятые а or и and
Но тогда не работает прикол, если вставить 0 и будет изначальное значение

Gregory
12.03.2017
12:44:57
else не обязательно вставлять там

Gregory
12.03.2017
12:48:00
будет, у меня же работает)

Страница 467 из 556