#php #html
#php #HTML
Вопрос:
Я пытаюсь создать проект на php, в котором имя класса будет считываться и преобразовываться в переменную и будет устанавливать фон определенного цвета, указанного в классе. например, если я набираю <div class="#999">
, я должен получить цвет фона #999
элемента (div). Я все сделал нормально, но у меня возникли проблемы с получением класса элемента, пожалуйста, помогите мне, как получить класс элемента. Заранее спасибо.
Комментарии:
1. вы можете сделать это в javascript, используя селекторы документов, используя метод
document.getelementbyid().classname
2.
the class name will be read ... and will set background of that specific color mentioned in the class
… это похоже на то, для чего предназначен CSS. Не уверен, где будет задействован PHP
Ответ №1:
Просто используйте атрибут data, а не имя класса. В вашем случае я бы добавил data-bg="#999"
, а затем прочитал его в JS и установил цвет фона.
Вот некоторая документация для данных-
const container = document.getElementById('container');
container.style.backgroundColor = container.dataset.bg;
<div id="container" data-bg="#999">lorem ipsum</div>
Комментарии:
1. Конечно, но почему бы просто не установить стиль CSS, используя этот цвет для начала, вместо того, чтобы указывать имя класса, которое на самом деле является цветом? Не понимаю, зачем нужен JavaScript.
2. Да, это была моя первая мысль, но я не знаю, почему у меня это не сработало. В MDN есть раздел об этом, так что да, CSS был бы проще.
Ответ №2:
Это похоже на работу для CSS, а не для PHP или даже JavaScript.
Вы можете либо
a) установите встроенный стиль для самого элемента, определяющий цвет фона (это просто и быстро, но не самый удобный или гибкий в долгосрочной перспективе):
<div style="background-color:#999">Div Contents Here</div>
или
б) определите класс CSS, который имеет правило, устанавливающее цвет фона для всех элементов, которые имеют этот класс:
.classA {
background-color:#999;
}
<div class="classA">Div Contents Here</div>
Это кажется наиболее эффективным способом определения цвета фона. Если вам нужно изменить, какой цвет присваивается div, определите несколько классов с разными цветами фона и заставьте ваш PHP выводить другое имя класса для div, в зависимости от ваших правил.
(Примечание: Ваш вопрос не был ясен на 100%, поэтому, если я неправильно понял, что вы имеете в виду, пожалуйста, дайте мне знать, и я смогу обновить ответ.)