Автор Тема: PHP и CSS - правильный подход  (Прочитано 5450 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн lewis

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.xperiment.ru
PHP и CSS - правильный подход
« : 21 Октября 2004, 12:14:13 »
Есть таблица для меню

txt            id
Главная    |main
Новости   |news
Продукты |prod
Контакты  |cont

Меню на странице отображается как
class=id>$txt
...

ВНИМАНИЕ, ВОПРОС!

Находясь на странице news.php я хочу, чтобы в меню этот пункт был выделенным. Как сделать это с помощью CSS?

Главная
Новости
Продукты
Контакты

Заранее спасибо

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
PHP и CSS - правильный подход
« Ответ #1 : 21 Октября 2004, 12:59:04 »
прописать в CSS стиль для выделения, а в пхп написать его для солва новости.
Не понял, при чем здесь пхп и цсс ,если это простая алгоритмическая задачка на условный переход из школьного курса информатики.

Оффлайн lewis

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.xperiment.ru
PHP и CSS - правильный подход
« Ответ #2 : 21 Октября 2004, 13:04:27 »
в том то все и дело, что задача примитивная, а я не понимаю:(
ведь когда я вывожу массив строк-ссылок,
каждому  из пунктов меню соответствует СВОЙ стиль.
а как сделать, чтобы выделенным пожизни был тока тот, на чьей странице я?

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
PHP и CSS - правильный подход
« Ответ #3 : 21 Октября 2004, 13:12:08 »
что это за бред такой - каждому пункту меню - свой стиль?
Это сайт цирка?
Ну, если так, у каждого элемента меню должно быть ДВА своих стиля.

Оффлайн lewis

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.xperiment.ru
PHP и CSS - правильный подход
« Ответ #4 : 21 Октября 2004, 14:12:07 »
не кипятись. я же не специально туплю.
если ты можешь сказать, как этот вопрос решить - скажи.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
PHP и CSS - правильный подход
« Ответ #5 : 21 Октября 2004, 18:40:53 »
так я же сказал, кажется.
Непонятно?
Каждому пункту - ДВА стиля. с выделением и без.
в скрипте - тупая проверка на имя и выбор стиля.
что здесь непонятного?

Оффлайн lewis

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.xperiment.ru
PHP и CSS - правильный подход
« Ответ #6 : 22 Октября 2004, 10:17:20 »
дело в том, что я делаю проверку стиля и пишу
$style = \'cssstyle\'; $style = \'cssstyle2\';
if ($menu_item = $page) $style = $style2;
только после такой проверки ВСЕ стили на странице становятся style2

до меня не доходит, как изменить стиль ТОЛЬКО одного элемента??!!

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
PHP и CSS - правильный подход
« Ответ #7 : 22 Октября 2004, 10:56:26 »
Вот так бы давно и сказал.
Что не знаешь самого базового синтаксиса.
Учи:
http://www.php5.ru/study/syntax#if

Оффлайн lewis

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.xperiment.ru
PHP и CSS - правильный подход
« Ответ #8 : 22 Октября 2004, 11:50:54 »
посмотри: http://www.midart.ru/portfolio.php - это как есть
(с произвольным количеством срок в подменю)

http://www.verbatim.ru/midart/portfolio.php - это как хочется
(с фиксированным количеством)

то что ты предлагаешь, хорошо в том случае, если у нас фиксированное число строк, для каждой я пишу if-else и все рады,
а у меня то:
$page = portfolio \\\\Страница Портфолио
$sql = "SELECT pod, podtext FROM podmenu WHERE pod=\'$page\'";
$result = mysql_query($sql);
while ($rowp = mysql_fetch_array($result)) {
   $pod = $rowp[\'pod\'];
   $podtext = $rowp[\'podtext\'];

   $podclass = $pod; \\\\название класса совпадает с названием страницы
   $podclass2= $pod.\'_on\'; \\\\подсветка
   if ($pod=$page)
   {
   $podmenu_block .= "

$podtext
   ";
   }

потом я публикую

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
PHP и CSS - правильный подход
« Ответ #9 : 22 Октября 2004, 11:58:31 »
поражает меня людская непонятливость.
Терпение моё истощается.
Ты идешь, читаешь, исправляешь свой кривой скрипт.
К кривости которого вся та беллетристика, которую ты тут написал, не имеет никакого отношения.
проблема твоя ГОРАЗДО ПРОЩЕ.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
PHP и CSS - правильный подход
« Ответ #10 : 22 Октября 2004, 11:59:39 »
А про разность между фиксированным и произвольным - это бред

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
PHP и CSS - правильный подход
« Ответ #11 : 22 Октября 2004, 13:40:16 »
Цитировать
lewis:
if ($menu_item = $page) $style = $style2;

Оператор сравнения "==" а не "="
Все болезни от нервов, только сифилис от удовольствия

Оффлайн lewis

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.xperiment.ru
PHP и CSS - правильный подход
« Ответ #12 : 22 Октября 2004, 13:49:11 »
При всем моем уважении - то как ты мне помог в прошлый раз, это было супер, я понял свой ашипка. А щас ты тычешь меня в доки, я лазаю по манам уже неделю, мне непонятен ПОДХОД!!!
Покажи, пожалуйста, алгоритм

Оффлайн Босc всех зон

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 14
  • +0/-0
  • 0
    • Просмотр профиля
PHP и CSS - правильный подход
« Ответ #13 : 22 Октября 2004, 14:10:35 »
Эх. ну что ты будешь делать. :)
Алгоритм (это не рабочий код):

$item_current 
= \'news\'; // у тебя берётся из урла
foreach ($menu_items as $item) {
  $style = ($item_current == $item) ? \'подсвечивать\' : \'не подсвечивать\';
  ....
}

ясно?

Ты  знаешь какой пункт меню тебе нужно подсветиь.
В цикле ты _по очереди_ выводишь все свои пункты меню.
Так и сравнивай текущий пункт что ты выводишь с названием того который нужно выделить. Если совпадают ставь один стиль (с выделением) если не совпадают ставь другой стиль (без оного).

Может с 18 раза поймёшь.
« Последнее редактирование: 22 Октября 2004, 14:25:26 от Босc всех зон »

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
PHP и CSS - правильный подход
« Ответ #14 : 22 Октября 2004, 15:07:58 »
У тебя ошибка не в алгоритме, а в коде.
По той ссылке, которую я тебе дал, КУРСИВОМ эта ошибка ВЫДЕЛЕНА

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28