PHP заменяет стилизацию CSS?

Я случайный веб-разработчик, поэтому обычно я не знаком с деталями и глубоким дизайном стилей CSS. Поскольку большинство из того, что я делаю, требует PHP, в конце концов все мои страницы исполняют некоторый PHP.

Я чувствую себя более комфортно при реализации деталей дизайна в включенных классах PHP, а не в CSS.

Например, вместо CSSing заголовка, общего для всего сайта, я просто включаю («header.php») на каждой странице, «header.php», содержащий среди прочего класс Palette со всеми определениями стиля и с указанием стиля непосредственно в элементах (У меня есть личная аллергия на слишком много файлов)

До сих пор я не нашел никаких неудобств в этом подходе, на самом деле для меня более понятна и гибка реализация дизайна на процедурном языке, чем в декларативном (я программист на C ++).

Мне интересно, если в будущем я буду сожалеть об этом решении, что не так с этим подходом?

—- РЕДАКТИРОВАТЬ —-

Позвольте мне показать простой пример, чтобы уточнить, что я имею в виду (пример не разработан, определенно, он будет лучше разработан в производственном случае)

class Palette{

var $colorBackground="#fff";
var $colorText="#000";
}

//-------------------------------------
function styleInHeader($palette){

$css=<<<THECSS
.header{
color:{$palette->colorText};
background-color:{$palette->colorBackground};
}
THECSS;

return $css;
}

// when generating the <head>

$pal=new Palette();
echo style_general($pal);
  • Преимущества: определение в классе Палитра является уникальным для всех веб-сайта
  • Я могу применить некоторую логику к палитре объектов, например, варьируя цвета, которые она содержит, под некоторой логикой или даже при взаимодействии с пользователем.
  • Я могу создавать подклассы Palette, и передаваемые экземпляры этих подклассов будут иметь гибкость, фактически у меня будут все преимущества процедурно-ориентированной / объектно-ориентированной технологии для стилизации.

1

Решение

Это может работать, если вы хороший программист, очень тщательно применяете это правильно и знаете, что и почему вы делаете. В конечном итоге, CSS решает задачи примерно так же, как и код, настраивая метки и загружая для них данные из общего источника.

Однако есть одна очень важная причина пересмотреть ваш подход:

Ты сможешь никогда быть в состоянии заставить кого-то еще работать над этим проектом, потому что они не будут знать, что вы делаете.

Но до тех пор, пока вы признаете, что это проект с одним человеком, я не предвижу серьезных проблем.

Однако, если вы делаете это с намерением сделать что-то большое и профессиональное, что может потребовать от других людей помочь вам в какой-то момент в будущем (или, что еще хуже, заплатить кому-то за это), то я бы действительно поменял на самом деле с помощью CSS для проекта.

4

Другие решения

Это только то, как я вижу, если покупка того или иного элемента через php — это не только тяжелая работа, но и ненужная, и она сделает ваш код «х» в разы длиннее и сложнее для чтения, что если вы не откроете этот php файл в течение одного месяца, а затем вы решили что-то изменить в нем? Вы не будете помнить каждый параметр, и вы забудете стилизовать некоторые из них, и это станет бесконечным циклом стилизации и загрузки …

Кроме того, зачем писать 100 раз один и тот же стиль для 100 элементов, если вы можете сразу нацелить их на CSS, добавив класс?

Краткий ответ:
Использование таблицы стилей CSS проще, гибче и делает ваш код более читабельным.

0

По вопросам рекламы [email protected]