CSS выражения
Я прочитал где-то, что CSS Expressions устарели и их не следует использовать. Я никогда о них не слышал и решил взглянуть. Я нашел пример кода, который фиксировал элемент в одном и том же месте на экране, даже если прокручивать страницу.
<html>
<style>
#fixed {
position:absolute;
left:10px;
top:expression(body.scrollTop + 50 + "px");
background:white;
border:1px solid red;}
</style>
<body>
<p id="fixed">Вот текст, который зафиксирован.</p>
<p>
[много раз: "всякие вещи <br/>"]
</p>
</body>
</html>
Это напомнило мне сайты, на которых внизу страниц были "панели для поделиться" и прочие элементы.
Итак...
- Это именно так они это делают?
- Можно ли использовать Expressions в данном случае?
- Если нет, что тогда использовать?
- Есть ли еще какие-то интересные/полезные вещи, с которыми Expressions могут помочь?
1 ответ(ов)
- Вероятно, нет. Гораздо проще использовать
position: fixed
или JavaScript. - Не стоит, если вы только не поддерживаете IE < 8. IE8+ и другие браузеры этого не поддерживают; это не соответствует стандартам и не пройдет валидацию.
- Используйте
position: fixed; bottom:x; top:y; left:a; right:b;
, где x, y, a и b — это смещения. Или используйте JavaScript. - Снова, не стоит, если вы используете только старые версии IE. На самом деле, лучше просто откажитесь от этого. Такие же эффекты можно достичь с помощью JS и обычного CSS.
*Официально, по крайней мере. Как оказалось, это работало в Chrome для @DalexL.
Как расположить div внизу своего контейнера?
Установить фиксированную ширину столбца таблицы независимо от количества текста в ячейках?
Как сделать перенос строки с помощью CSS, не используя <br />?
Стоит ли использовать единицы px или rem в CSS? [закрыто]
Как изменить цвет заливки SVG-изображения при использовании его в качестве фонового изображения?