#php #css
#php #css
Вопрос:
Как я могу проверить, равно ли значение переменной PHP числу, а затем изменить css элемента на это число.
Комментарии:
1. измените класс объекта на это значение переменной.
Ответ №1:
Учитывая, что PHP выполняется на сервере, генерирующем страницу, вы могли бы использовать что-то вроде этого :
<?php if ($variable == 10) : ?>
<p class="firstclass">plop !</p>
<?php else : ?>
<p class="otherclass">plop !</p>
<?php endif; ?>
Или использовать условие только для изменения класса CSS :
<p class="<?php echo $variable == 10 ? 'firstclass' : 'otherclass'; ?>">plop !</p>
Комментарии:
1. Есть ли название для синтаксиса PHP, подобного этим примерам? Я всегда предполагал, что
if
инструкции были заключены в{}
, и я никогда раньше не видел второго примера, ty.2. Это класс HTML, а не класс CSS.
3. @Daniel see fr2.php.net/manual/en/control-structures.alternative-syntax.php ; этот альтернативный синтаксис часто используется в шаблонах при смешивании PHP и HTML.
Ответ №2:
Я предполагаю, что CSS находится в другом файле. Вы можете использовать PHP для динамической генерации CSS. Вместо использования style.css вы используете style.php и включить код:
<?php
header("Content-type: text/css");
?>
В начале файла. Это сообщает пользователю, что этот файл следует рассматривать как таблицу стилей. Это позволяет отправлять данные в таблицу стилей. Например, вы используете GET to для отправки цветового кода для определенного элемента. Вы используете PHP на HTML-странице, чтобы создать ссылку таблицы стилей на style.php?color=#FFFFFF и в таблице стилей вы используете это:
element {
color: <?php echo $_GET["color"];?> ;
}
Если это не сработает, дайте мне знать.
Ответ №3:
Вы могли бы использовать оператор is_numeric()
and switch()
для вывода номера CSS, если он встроенный. Если ваш CSS не является встроенным, вы можете использовать отдельные классы и изменить класс.