Автор Тема: Подскажите. Горизонтальное меню  (Прочитано 1323 раз)

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

Оффлайн Игорь1234567

  • Новичок
  • *
  • Сообщений: 2
  • карма: +0/-0
    • Просмотр профиля
Подскажите. Горизонтальное меню
« : 13 Декабря 2009, 22:11:32 »
Подскажите как сделать подобное горизонтальное меню

Оффлайн leonardo

  • Новичок
  • *
  • Сообщений: 3
  • карма: +0/-0
    • Просмотр профиля
Re: Подскажите. Горизонтальное меню
« Ответ #1 : 20 Января 2010, 10:45:38 »
ТС я так понял вам лучше начать основы изучать.
Представляю что будет продолжение тем :

Re: Подскажите. ШАПКУ
Re: Подскажите. ЛЕВЫЙ БЛОК САЙТА
Re: Подскажите. ПРАВЫЙ БЛОК САЙТА
и т.д. без обид, учитесь не плохой ресурс htmlbook.ru сам когда там начинал.

Оффлайн Игорь123

  • Новичок
  • *
  • Сообщений: 6
  • карма: +0/-0
    • Просмотр профиля
Re: Подскажите. Горизонтальное меню
« Ответ #2 : 21 Января 2010, 18:10:53 »
Уважаемый leonardo. Основы я знаю... уж поверьте.

А интересует меня решение не очень простой проблемы.
Если для вас это просто, то почему бы не помочь...?
Ну это вам решать.

А так для вас и для всех остальных, хочу углубиться в вопрос.
На нижеуказанном изображении видно как при наведении на ссылку блок(div) становится голубым. Если присмотреться видно как отступы блока ушли влево и вправо на 10px и немного закрыли собой, соседние блоки (за счет отсутствия белых границ хорошо видно)...

Но это происходит при наведении
 a:hover,
а когда делаю a:visited, после нажатия на ссылку, растягиваются и становятся голубыми, все блоки.

Вот вопрос, как сделать так, что-бы после прохода по ссылке, в этом меню выделялся только один блок и оставался в таком состоянии до тех пор пока не зайдешь на другую страницу?
« Последнее редактирование: 21 Января 2010, 18:14:37 от Игорь123 »

Оффлайн biohazard

  • Кодер
  • 4 уровень
  • ***
  • Сообщений: 308
  • карма: +7/-2
  • work hard - go pro
    • Просмотр профиля
Re: Подскажите. Горизонтальное меню
« Ответ #3 : 22 Января 2010, 00:07:57 »
Хотелось бы поинтересоваться основы чего вы знаете...

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

a:hover - к чему вы тут приплели псевдоклассы CSS мне чего та непонятно...
Always code as if the person who ends up maintaining your code is a violent psychopath who knows where you live.

Оффлайн Игорь123

  • Новичок
  • *
  • Сообщений: 6
  • карма: +0/-0
    • Просмотр профиля
Re: Подскажите. Горизонтальное меню
« Ответ #4 : 22 Января 2010, 09:16:01 »
biohazard.

Сделать условие? То есть применить либо java либо php? Проблема в том, что я в этих языках еще далекооооооооооо не ас.

На счет псевдоклассов. Данное меню создано за счет html  и таблицы стилей, поэтому и включаю псевдоклассы в свой css. 

Оффлайн biohazard

  • Кодер
  • 4 уровень
  • ***
  • Сообщений: 308
  • карма: +7/-2
  • work hard - go pro
    • Просмотр профиля
Re: Подскажите. Горизонтальное меню
« Ответ #5 : 22 Января 2010, 14:00:06 »
т.е. сайт у вас на чистом html?
тем более, не понимаю в чём проблема...
Always code as if the person who ends up maintaining your code is a violent psychopath who knows where you live.

Оффлайн Игорь123

  • Новичок
  • *
  • Сообщений: 6
  • карма: +0/-0
    • Просмотр профиля
Re: Подскажите. Горизонтальное меню
« Ответ #6 : 22 Января 2010, 18:13:44 »
Да. На чистом html.

Вот я и пытаюсь выяснить стоит ли прибегать к java или для этой задачи хватит обычного языка гипертекстовой разметки с применением css?
К слову на css и html пока не выходит...

Оффлайн biohazard

  • Кодер
  • 4 уровень
  • ***
  • Сообщений: 308
  • карма: +7/-2
  • work hard - go pro
    • Просмотр профиля
Re: Подскажите. Горизонтальное меню
« Ответ #7 : 23 Января 2010, 01:27:39 »
То есть, у вас не получается сделать так, чтобы на одной html странице был выделен один пункт меню, а на другой, соответственно, другой пункт? Вам не кажется это очевидным?
Always code as if the person who ends up maintaining your code is a violent psychopath who knows where you live.

Оффлайн Игорь123

  • Новичок
  • *
  • Сообщений: 6
  • карма: +0/-0
    • Просмотр профиля
Re: Подскажите. Горизонтальное меню
« Ответ #8 : 25 Января 2010, 09:50:46 »
Я хочу, что-бы при нажатии на ссылку фон блока менял цвет и форму, а остальные (не активные на данный момент ссылки) оставляли первоначальный вариант. А затем при переходе на другую страницу, выделялся блок страницы на которую перешли, а предыдуще-активный блок возвращался к изначальному состоянию.
Но если ставить visited, то все посещенные страницы уже не возвращаются к первоначальному варианту, а оставляют форму посещенного блока.
Вот я и думаю, что мне делать?

Оффлайн biohazard

  • Кодер
  • 4 уровень
  • ***
  • Сообщений: 308
  • карма: +7/-2
  • work hard - go pro
    • Просмотр профиля
Re: Подскажите. Горизонтальное меню
« Ответ #9 : 25 Января 2010, 10:31:01 »
ну у вас ведь несколько html страниц, так?
Вот и сверстайте их так, чтобы когда вы открывали например novosti.html был подсвеченным пункт меню новости,
в файле hortfolio.html был подсвеченным пункт меню портфолио, и так далее...

ёмаё, первый класс

Думаю, вам надо читать тематические книжки, блоги, до просветления.
Always code as if the person who ends up maintaining your code is a violent psychopath who knows where you live.

Оффлайн Rex

  • Administrator
  • 7 уровень
  • *****
  • Сообщений: 1811
  • карма: +15/-0
  • Странник
    • Просмотр профиля
    • ВКГУ им. С. Аманжолова
Re: Подскажите. Горизонтальное меню
« Ответ #10 : 25 Января 2010, 10:35:56 »
А затем при переходе на другую страницу, выделялся блок страницы на которую перешли, а предыдуще-активный блок возвращался к изначальному состоянию.
Это сделать довольно элементарно, если вы используете php. Скажем у вас есть такие адреса:
./?action=pages
./?action=info
./?action=blah
Определяете action из $_REQUEST-а и при выводе меню его учитываете:

<?php
/*  **** Какие-то инициализации и все такое ****  */
foreach ($menu as $row){
   
$current $action == $row['url'] ? " class=\"active-menu-item\"" "";
   echo 
"<li{$current}><a href=\"/".$row['url']."/\">" $row['title'] . "</a></li>";
}
/*  **** Еще что-то и сам вывод ****  */
?>

Как то вот так :-) Надеюсь сама идея понятна :-)

Оффлайн biohazard

  • Кодер
  • 4 уровень
  • ***
  • Сообщений: 308
  • карма: +7/-2
  • work hard - go pro
    • Просмотр профиля
Re: Подскажите. Горизонтальное меню
« Ответ #11 : 25 Января 2010, 10:59:09 »
Да. На чистом html.
Так у него статичный сайт
Always code as if the person who ends up maintaining your code is a violent psychopath who knows where you live.

Оффлайн Rex

  • Administrator
  • 7 уровень
  • *****
  • Сообщений: 1811
  • карма: +15/-0
  • Странник
    • Просмотр профиля
    • ВКГУ им. С. Аманжолова
Re: Подскажите. Горизонтальное меню
« Ответ #12 : 25 Января 2010, 11:23:52 »
Да. На чистом html.
Так у него статичный сайт
не увидел этого.

Тогда я вообще не пойму в чем проблема. Это же основы, самое начало. Берем книгу по XHTML/CSS и читаем.

Оффлайн Rex

  • Administrator
  • 7 уровень
  • *****
  • Сообщений: 1811
  • карма: +15/-0
  • Странник
    • Просмотр профиля
    • ВКГУ им. С. Аманжолова
Re: Подскажите. Горизонтальное меню
« Ответ #13 : 25 Января 2010, 18:12:36 »
_http://www.cssmenumaker.com/ Конструктор для меню.
_http://anton.shevchuk.name/html-and-css/web20-css-menu/ пример.