eleonore 2 Жалоба Опубликовано: 27 апреля, 2014 Здравствуйте. На сайте белый background, есть так же главная страница сайта, с размещенным на ней изображением, логотипом и ссылкой входа на сайт, так сказать страница входа. Так вот эта страница входа должна иметь другого цвета background. Подскажите, как поменять его, ведь у body ко всему сайту задан белый цвет? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Galaxy 109 Жалоба Опубликовано: 27 апреля, 2014 эм , в чем проблема ? сделайте какойто блок , задайте ему высоту и задайте ему другой бэкграунд Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eleonore 2 Жалоба Опубликовано: 27 апреля, 2014 эм , в чем проблема ? сделайте какойто блок , задайте ему высоту и задайте ему другой бэкграунд а ЧТО, не существует какой-то функции позволяющей менять фоны на страницах динамически? а если я захочу для каждой страницы задать разные цвета, мне нужно вставлять кучу новых блоков?... Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Galaxy 109 Жалоба Опубликовано: 27 апреля, 2014 ну как вариант Javascript'ом смотреть URL , и в зависимости от этого менять стиль body Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eleonore 2 Жалоба Опубликовано: 27 апреля, 2014 ну как вариант Javascript'ом смотреть URL , и в зависимости от этого менять стиль body Я не сильна в скриптах.. может кто-то посоветует конкретный пример реализации или подробную статью о методах... ну как вариант Javascript'ом смотреть URL , и в зависимости от этого менять стиль body но спасибо за подачу идеи, поищу примеры) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eleonore 2 Жалоба Опубликовано: 27 апреля, 2014 я думаю смысл такой : if page home - body style: background{ #000} else background # fff Я не умею писать скрипты, помогите реализовать мысль, пожалуйста в правильные строки кода ) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Galaxy 109 Жалоба Опубликовано: 27 апреля, 2014 хм берем адресную строку , регуляркой выцепляем название нашей страницы, получаем значение , далее обычный switch Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eleonore 2 Жалоба Опубликовано: 27 апреля, 2014 хм берем адресную строку , регуляркой выцепляем название нашей страницы, получаем значение , далее обычный switch обычный switch... угу... спасибо и на том . класс! а может кто-то ещё накидает пример, я думаю строчек 10 всего. Может кто-то?)) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
roman_kr_ru 1 Жалоба Опубликовано: 27 апреля, 2014 ну как вариант Javascript'ом смотреть URL , и в зависимости от этого менять стиль body Для чего JS? Зачем перекладывать на клиент то, что можно сделать на сервере. Лучше посмотреть в сторону php или любого серверного ЯП. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Galaxy 109 Жалоба Опубликовано: 27 апреля, 2014 сайт уже может быть на движке Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Melodyn 4 Жалоба Опубликовано: 27 апреля, 2014 А что мешает сделать на css? Просто не пишите в style цвет фона. Ставьте в начале каждой страницы <style>background: #123456</style> и будут у вас на каждой страничке разные бэкграунды. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
hedgehog 149 Жалоба Опубликовано: 15 мая, 2014 Офигеть вы насоветовали, я такой ерунды давно не читал . Я так понимаю, что это вордпресс? ВП автоматом назначает классы для <body>. Если это статичная главная страница, то можно сделать как-то так: body.page.home {background: #f00;} Ну либо к любому другому элементу, отталкиваясь от body.page.home. Если у body нет классов, то тему разрабатывал злобный буратин: body_class() А вообще вариантов вагон. Можно добавить поле для всех страниц и можно будет в нем указывать цвет фона каждой страницы. Или изображение. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eleonore 2 Жалоба Опубликовано: 15 мая, 2014 Офигеть вы насоветовали, я такой ерунды давно не читал . Я так понимаю, что это вордпресс? ВП автоматом назначает классы для <body>. Если это статичная главная страница, то можно сделать как-то так: body.page.home {background: #f00;} Ну либо к любому другому элементу, отталкиваясь от body.page.home. Если у body нет классов, то тему разрабатывал злобный буратин: body_class() А вообще вариантов вагон. Можно добавить поле для всех страниц и можно будет в нем указывать цвет фона каждой страницы. Или изображение. Решила вопрос, подключив в enter.php отдельный стилевой файл <link rel="stylesheet" href="<?php bloginfo('stylesheet_directory'); ?>/enter.css" type="text/ css" media="screen, projection" /> Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
hedgehog 149 Жалоба Опубликовано: 15 мая, 2014 Если тебе так удобнее... Но это костыли какие-то. Еще и целый файл ради одного стиля подключать. Что помешало использовать классы, по умолчанию вешающиеся на body? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eleonore 2 Жалоба Опубликовано: 15 мая, 2014 (изменено) Если тебе так удобнее... Но это костыли какие-то. Еще и целый файл ради одного стиля подключать. Что помешало использовать классы, по умолчанию вешающиеся на body? почему - то у меня вешаются классы к body на всех страницах, кроме enter.php (как раз той, у которой нужно было изменить Фоновый цвет).... Если тебе так удобнее... Но это костыли какие-то. Еще и целый файл ради одного стиля подключать. Что помешало использовать классы, по умолчанию вешающиеся на body? аааа, это потому, что к enter.php я не подключаю header, так как мне не нужен там header с его менюшкой и т.д. а <body <?php body_class($class); ?>> как раз в header прописан. enter.php - это просто страница входа, в центре которой есть изображение и кнопка "войти на сайт". Не знаю, правильно ли я это все реализовала..Изменено 15 мая, 2014 пользователем eleonore Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Switch74 270 Жалоба Опубликовано: 15 мая, 2014 (изменено) вообще хорошо бы это сделать на стороне сервера можно в <style> можно отдельным стилевым файлом на вроде как здесь http://fish-drink.ru/ (в нижнем левом углу квадратики), смысл правда немного другой, там для всего сайта стиль меняется, но думаю схема яснаИзменено 15 мая, 2014 пользователем Switch74 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eleonore 2 Жалоба Опубликовано: 15 мая, 2014 вообще хорошо бы это сделать на стороне сервера можно в <style> можно отдельным стилевым файлом на вроде как здесь http://fish-drink.ru/ (в нижнем левом углу квадратики), смысл правда немного другой, там для всего сайта стиль меняется, но думаю схема ясна Но там вроде тоже 3 разных стилевых файла подключаются.. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
hedgehog 149 Жалоба Опубликовано: 15 мая, 2014 почему - то у меня вешаются классы к body на всех страницах, кроме enter.php (как раз той, у которой нужно было изменить Фоновый цвет).... enter.php - это custom page template? Если да, то там еще на бади нацепится класс "template-enter-php" (или page-template-enter-php, уже не помню точно) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eleonore 2 Жалоба Опубликовано: 15 мая, 2014 почему - то у меня вешаются классы к body на всех страницах, кроме enter.php (как раз той, у которой нужно было изменить Фоновый цвет).... enter.php - это custom page template? Если да, то там еще на бади нацепится класс "template-enter-php" (или page-template-enter-php, уже не помню точно) к enter.php я не подключаю header, так как мне не нужен там header с его менюшкой и т.д. а <body <?php body_class($class); ?>> как раз в header прописан. enter.php - это просто страница входа, в центре которой есть изображение и кнопка "войти на сайт". Не знаю, правильно ли я это все реализовала.. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
hedgehog 149 Жалоба Опубликовано: 15 мая, 2014 Ну, у тебя в enter.php есть закоментированная строчка "Template Name: XYZ" и это самое XYZ ты выбираешь при редактировании страницы? Или каким образом ты отображаешь именно этот темплейт для страницы входа? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eleonore 2 Жалоба Опубликовано: 15 мая, 2014 Ну, у тебя в enter.php есть закоментированная строчка "Template Name: XYZ" и это самое XYZ ты выбираешь при редактировании страницы? Или каким образом ты отображаешь именно этот темплейт для страницы входа? Да, конечно : /* Template Name: enter */ )) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
hedgehog 149 Жалоба Опубликовано: 15 мая, 2014 Да, конечно : /* Template Name: enter */ )) Вот, об этом я и говорю. Это custom page template. Посмотри на body классы после подключения header.php , там есть класс "page-template-enter.php" который всегда будет там, пока имя файла шаблона будет "enter.php". Вот к нему можешь и привязываться в основном файле стилей. Незачем выдумывать с инлайнами или отдельными CSS. body.page-template-enter-php .some-inner-wrapper {background: #000;} Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eleonore 2 Жалоба Опубликовано: 15 мая, 2014 Да, конечно : /* Template Name: enter */ )) Вот, об этом я и говорю. Это custom page template. Посмотри на body классы после подключения header.php , там есть класс "page-template-enter.php" который всегда будет там, пока имя файла шаблона будет "enter.php". Вот к нему можешь и привязываться в основном файле стилей. Незачем выдумывать с инлайнами или отдельными CSS. body.page-template-enter-php .some-inner-wrapper {background: #000;} такое есть на всех других страницах, но я не подключаю header к enter.php, откуда возьмутся классы, если не подключается к этому файлу header, а следовательно не срабатывает для этой страницы присвоение классов. ведь <body <?php body_class($class); ?>> прописан к header, который не подключается к enter.php. Или я туплю где-то?) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
hedgehog 149 Жалоба Опубликовано: 15 мая, 2014 Так если это отдельный темплейт, то <body> там свой и ты туда можешь сама классы навешать какие хочешь. Я чего-то не понимаю? Если у тебя несколько страниц с таким темплейтом - добавь галку какую-нибудь в админке при редактировании. Если она стоит - цвет такой-то, если нет - дефолтный. Либо поле для выбора цвета. Это все custom fields. Если не хочется заморачиваться с метабоксами, можно поставить плагин: https://wordpress.org/plugins/advanced-custom-fields/ В ACF можно выбирать, при каких условиях показывать поле. Например, если выбран определенный темплейт страницы. И вообще, даже если хедер.пхп не подключен - то ведь body все равно есть, и в него можно добавить классы стандартные. 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eleonore 2 Жалоба Опубликовано: 15 мая, 2014 Так если это отдельный темплейт, то <body> там свой и ты туда можешь сама классы навешать какие хочешь. Я чего-то не понимаю? Если у тебя несколько страниц с таким темплейтом - добавь галку какую-нибудь в админке при редактировании. Если она стоит - цвет такой-то, если нет - дефолтный. Либо поле для выбора цвета. Это все custom fields. Если не хочется заморачиваться с метабоксами, можно поставить плагин: https://wordpress.org/plugins/advanced-custom-fields/ В ACF можно выбирать, при каких условиях показывать поле. Например, если выбран определенный темплейт страницы. И вообще, даже если хедер.пхп не подключен - то ведь body все равно есть, и в него можно добавить классы стандартные. А я об этом и не подумала. Спасибо за варианты! Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах