Это просто невозможно.Поскольку триггер @media screen and (max-width: 1170px)
происходит на стороне клиента.
Достижение ожидаемого результата будет возможно только в том случае, если SASS соберет все правила и свойства в вашей таблице стилей, содержащей переменную $base_width
, и скопирует / изменил их соответственно.
Так как он не будет работать автоматически, вы можете сделать это вручную, как это:
@media screen and (max-width: 1170px)
$base_width: 960px // you need to indent it to (re)set it just within this media-query
// now you copy all the css rules/properties that contain or are relative to $base_width e.g.
#wrapper
width: $base_width
...
@media screen and (min-width: 1171px)
$base_width: 1160px
#wrapper
width: $base_width
...
Это на самом деле не СУХОЙ, но лучшее, что вы можете сделать.
ЕслиИзменения одинаковы каждый раз, когда вы также можете подготовить миксин, содержащий все изменяющиеся значения, поэтому вам не нужно будет повторять его.Кроме того, вы можете попытаться объединить миксин с конкретными изменениями.Как:
@media screen and (min-width: 1171px)
+base_width_changes(1160px)
#width-1171-specific-element // additional specific changes, that aren't in the mixin
display: block
И миксин будет выглядеть так
=base_width_changes($base_width)
#wrapper
width: $base_width