Я знаю position: absolute, що витягне елемент із потоку, і він перестане взаємодіяти зі своїми сусідами.
Які ще способи цього можна досягти?
Я знаю position: absolute, що витягне елемент із потоку, і він перестане взаємодіяти зі своїми сусідами.
Які ще способи цього можна досягти?
Відповіді:
Жоден?
Я маю на увазі, крім того, щоб повністю видалити його з макета display: none, я майже впевнений, що це все.
Чи стикаєтесь ви з конкретною ситуацією, в якій position: absoluteне є життєздатним рішенням?
position: absoluteвикликає перефарбовування при прокрутці, що погано для продуктивності на мобільному телефоні
display: noneповністю видаляє елемент не тільки з потоку.
Іншим варіантом є встановлення height: 0; overflow: visible;елемента, хоча він насправді не буде за межами потоку, а тому може порушити колапс поля .
::beforeпсевдоелемент з абсолютним позиціонуванням для емуляції фону.
Є display: none, але я думаю, що це може бути трохи більше, ніж те, що ви шукаєте.
display: noneз’являються у безглуздому місці (у верхній частині екрана, прикриваючи вкладки). Здається, непродемонстровані елементи справді без позиції, принаймні в цьому браузері.
position: fixed;також "вискочить" елемент із потоку, як ви кажете. :)
position: absoluteповинен супроводжуватися позицією. напрtop: 1rem; left: 1rem
position: fixedоднак розмістить елемент там, де він зазвичай відображається відповідно до документообігу, але запобігає його переміщенню після цього. Він також ефективно встановлює висоту 0px (щодо купола), так що наступний елемент зміщується над ним.
Це може бути досить круто, оскільки ви можете встановити position: fixed; z-index: 1(або будь-який індекс z, який вам потрібен), щоб він "спливав" над наступним елементом.
Це особливо корисно для заголовків із фіксованою позицією, які залишаються вгорі під час прокрутки, наприклад.
Плаваючий він реорганізує потік, але положення: абсолютний - єдиний спосіб повністю видалити його з потоку документа.
Я знаю, що цьому питанню кілька років, але що, на мою думку, ви намагаєтеся зробити, це отримати його так, коли великий елемент, як зображення, не заважає висоті div?
Я щойно натрапив на щось подібне, де хотів, щоб зображення переповнювало div, але я хотів, щоб воно було в кінці рядка тексту, тому я не знав, де воно опиниться.
Рішенням, яке я розібрав, було поставити поле внизу: -висота елемента, тож якщо зображення має висоту 20 пікселів,
margin-bottom: -20px;
vertical-align: top;
наприклад.
Таким чином він плавав над зовнішньою частиною div і залишався поруч з останнім словом у рядку.