Sobes.tech
Middle

CSS feladat: három egymás alatti div blokk, mindegyiknek margin-top 10px és margin-bottom 30px. Mekkora lesz a blokkok közötti távolság? Mi változik, ha div helyett span-t használunk?

sobes.tech MI

Válasz az MI-től

Если три блока div расположены друг под другом, у каждого margin-top: 10px и margin-bottom: 30px, то между блоками будет не сумма 40px, а 30px. Это происходит из-за схлопывания внешних отступов (margin collapsing): соседние вертикальные margin между блоками не складываются, а берётся максимальный из них.

В данном случае между блоками margin-bottom 30px и margin-top 10px, значит расстояние будет 30px.

Если заменить div на span, то поведение изменится, так как span — это inline элемент, а margin-top и margin-bottom для inline элементов обычно не влияют на вертикальные отступы. В результате отступы могут не применяться или вести себя иначе, и блоки не будут располагаться друг под другом, а в одну строку, если не изменить display.