Size: a a a

2020 December 06

a

amrl in БЭМ
не ну .block1 .block2 & .header находятся на одном уровне
то есть это просто 3 блока но у .block1 и .block2 в данном кейсе есть ограничения ширина (а сами по себе блоки иметь такую ширину не должны не должны) то есть это именно на этой странице содержимое блоков должно иметь максимальную ширину в 1150рх а сам блок на всю ширину (хотя контент самого по себе блока не должен быть ограничен) это именно специфичность этой страници
источник

a

amrl in БЭМ
<header class="header">
 HEADER
</header>
<div class="block1">
   <div class="block1-item">1</div>
   <div class="block1-item">2</div>
   <div class="block1-item">3</div>
</div>
<div class="block2">
   <div class="block2-item">1</div>
   <div class="block2-item">2</div>
   <div class="block2-item">3</div>
   <div class="block2-item">4</div>
</div>
источник

AV

Aleksandr Vasiliev in БЭМ
amrl
<header class="header">
 HEADER
</header>
<div class="block1">
   <div class="block1-item">1</div>
   <div class="block1-item">2</div>
   <div class="block1-item">3</div>
</div>
<div class="block2">
   <div class="block2-item">1</div>
   <div class="block2-item">2</div>
   <div class="block2-item">3</div>
   <div class="block2-item">4</div>
</div>
Хм. Тогда модификатором block1_max-width (или как-то так), других вариантов не вижу

Завтра взрослые придут, может что-нибудь еще подскажут)
источник

Prikolist Начрэл... in БЭМ
amrl
а вот смотрите допустим есть страница
есть блок
.block
 .block__item
 .block__item

и мне нужно чтобы блок был на всю ширину, но элементы в нем были в неком контейнере на 1150рх
но суть в тому что стили главные я применяю к .block (гриды)
и если я оберну айтемы в дополнительный див то верстка слетит
нужно чтобы по умолчаниюсам переиспользуемый блок был на всю ширины и контент в нем тоже но можно изменять макимальную ширину контента какимто модификатором например
это мне что делать модификатор каждому item и делать этому модификатору максимальную ширину в 1150?
Мне не понятно что здесь написано. В чём проблема? Переформулируй. Блок может быть меньше 1150рх?
источник

Prikolist Начрэл... in БЭМ
amrl
вот чего я хочу добится
А с чем проблемы возникли?
источник

a

amrl in БЭМ
Prikolist Начрэл
Мне не понятно что здесь написано. В чём проблема? Переформулируй. Блок может быть меньше 1150рх?
видишь зелёный фон .block1? это фон блока, те он (блок) на всю ширину, также и с белым фоном .block2,
но содержимое 2 этих блоков имеет максимальную ширину 1150px,
именно содержимое,
но сам по себе блок (как header, например) это ограничение не должен иметь если я его буду переиспользовать на других страницах
я показал что также и у header может быть ограничено содердимое но на скрине оно типа не ограничено, а содержимое вот 2 тех блоков ограничено, хотя по умолчанию нет
те каким образом сделать это?
источник

Prikolist Начрэл... in БЭМ
Что сделать?
источник

AV

Aleksandr Vasiliev in БЭМ
Prikolist Начрэл
Что сделать?
У одних и тех же блоков на одних страницах должно быть ограничение содержимого по ширине, а на других страницах нет
источник

a

amrl in БЭМ
правильно разметку
типа вот сам блок, например

<div class="block1">
 <div class="block1__element">block1 item1</div>
 <div class="block1__element">block1 item2</div>
 <div class="block1__element">block1 item3</div>
</div>

.block1
 display: grid
 grid-template-columns: repeat(auto-fit, minmax(140px, 1fr))
 grid-gap: 20px
 background-color: green

.block1__element
 height: 180px
 background-color: orange


те на странице он будет выглядить просто как зеленый блок на всю ширину с оранжевыми айтемами (тоже на всю)

но как мне типерь сделать чтобы сам блок остался на всю а вот содержимое ограничить до максимального 1150px

если я например сделаю так, то слетят стили
<div class="block1">
 <div class="block1__inner">
   <div class="block1__element">block1 item1</div>
   <div class="block1__element">block1 item2</div>
   <div class="block1__element">block1 item3</div>
 </div>
</div>

...
.block1__inner
 width: 1150px


а если для inner продублирую почти все стили block1
то как то мне кажется не нормально типа
.block1__inner
display: grid
 grid-template-columns: repeat(auto-fit, minmax(140px, 1fr))
 grid-gap: 20px
 width: 1150px
источник

Prikolist Начрэл... in БЭМ
Aleksandr Vasiliev
У одних и тех же блоков на одних страницах должно быть ограничение содержимого по ширине, а на других страницах нет
Нужно добавить модификатор
источник

a

amrl in БЭМ
да но к чему?
источник

Prikolist Начрэл... in БЭМ
amrl
правильно разметку
типа вот сам блок, например

<div class="block1">
 <div class="block1__element">block1 item1</div>
 <div class="block1__element">block1 item2</div>
 <div class="block1__element">block1 item3</div>
</div>

.block1
 display: grid
 grid-template-columns: repeat(auto-fit, minmax(140px, 1fr))
 grid-gap: 20px
 background-color: green

.block1__element
 height: 180px
 background-color: orange


те на странице он будет выглядить просто как зеленый блок на всю ширину с оранжевыми айтемами (тоже на всю)

но как мне типерь сделать чтобы сам блок остался на всю а вот содержимое ограничить до максимального 1150px

если я например сделаю так, то слетят стили
<div class="block1">
 <div class="block1__inner">
   <div class="block1__element">block1 item1</div>
   <div class="block1__element">block1 item2</div>
   <div class="block1__element">block1 item3</div>
 </div>
</div>

...
.block1__inner
 width: 1150px


а если для inner продублирую почти все стили block1
то как то мне кажется не нормально типа
.block1__inner
display: grid
 grid-template-columns: repeat(auto-fit, minmax(140px, 1fr))
 grid-gap: 20px
 width: 1150px
Мне не понятно в чём проблема. Что бы ограничить максимальную ширину используй свойство max-width
источник

a

amrl in БЭМ
даа но к чему его использовать?
если у меня на странице 3 блока
а содержимое 2 из них ограничено 1150px
если я просто сделаю оберьку внтури каждого из этих 2 блоков то слетят стили самого бока (потому что дочернем элементом станет inner)
источник

AV

Aleksandr Vasiliev in БЭМ
amrl
да но к чему?
Так не выйдет?

.block1_mod
 grid-template-columns: repeat(auto-fit, minmax(140px,
1150px))
источник

Prikolist Начрэл... in БЭМ
amrl
даа но к чему его использовать?
если у меня на странице 3 блока
а содержимое 2 из них ограничено 1150px
если я просто сделаю оберьку внтури каждого из этих 2 блоков то слетят стили самого бока (потому что дочернем элементом станет inner)
К тому элементу, размер которого нужно ограничить
источник

AV

Aleksandr Vasiliev in БЭМ
Prikolist Начрэл
Мне не понятно в чём проблема. Что бы ограничить максимальную ширину используй свойство max-width
Сам блок должен быть по ширине 100%, как понимаю, а содержимое на 1150px
источник

a

amrl in БЭМ
Prikolist Начрэл
К тому элементу, размер которого нужно ограничить
ьак мне нужно ограничить не блок а его содержимое
аон на картинке .block1 (оранжевый) имеет ширину на вечь экран
а его содержимое ограничено

но ограничено оно только на этой странице, а модет быть и не ограничено на других,
источник

Prikolist Начрэл... in БЭМ
amrl
ьак мне нужно ограничить не блок а его содержимое
аон на картинке .block1 (оранжевый) имеет ширину на вечь экран
а его содержимое ограничено

но ограничено оно только на этой странице, а модет быть и не ограничено на других,
Ну назначай это правило содержимому. Если что-то не получается, возможно у тебя структура не подходит для этого, оберни содержимое в контейнер и назначай правило ему
источник

a

amrl in БЭМ
Aleksandr Vasiliev
Так не выйдет?

.block1_mod
 grid-template-columns: repeat(auto-fit, minmax(140px,
1150px))
нет, то ты каждой колонки говоришь что она модет иметь ширину до 1150px те с 3 элементами ее ширина модкт быть до 4450 + паддинги
источник

AV

Aleksandr Vasiliev in БЭМ
amrl
нет, то ты каждой колонки говоришь что она модет иметь ширину до 1150px те с 3 элементами ее ширина модкт быть до 4450 + паддинги
Сколько колонок известно?
источник