К счастью, Javascript не задействован. HTML и CSS отлично справятся с этой задачей. Прежде всего, давайте создадим ваш HTML. Вы, очевидно, знаете, на какой странице вы находитесь, поэтому мы добавим класс к ссылке текущей страницы. Так, например, если бы мы были на /index.php/home
, наша разметка может выглядеть примерно так.
<div id="navigation">
<ul>
<li><a class="current" href="<?php echo base_url() ?>index.php/home">Home</a></li>
<li><a href="<?php echo base_url() ?>index.php/portfolio">Portfolio</a></li>
<li><a href="<?php echo base_url() ?>index.php/about">About</a></li>
<li><a href="<?php echo base_url() ?>index.php/gallery">Gallery</a></li>
<li><a href="<?php echo base_url() ?>index.php/blog">Blog</a></li>
</ul>
</div>
Теперь, прежде чем окрашивать ссылку тока мы будем окрашивать остальные ссылки. Мы можем выбрать остальные ссылки через CSS так.
#navigation a {
}
Следующий CSS подберет все <a>
элементы, которые являются дочерними navigation
элемента. Теперь нам нужно установить цвет фона. Свойство CSS для установки цвета фона - background-color: xxx
. Где xxx
- либо шестнадцатеричный код, значение rgb, либо имя цвета. Поэтому мы будем делать следующее, чтобы все ссылки были серыми.
#navigation a {
background-color: #333; /* or whatever grey you want. */
}
Это установит каждую ссылку на цвет серый. Теперь, мы должны установить текущий ссылки на цвет черный.
Если вы заметили, мы добавили class="current"
к текущей ссылке, : Ссылка в этом случае. Затем нам нужно создать соответствующий стиль для этого. Наша CSS-декларация будет выглядеть примерно так.
#navigation .current {
}
Вышеуказанное заявление относится ко всем элементам с классом current
, который является потомком элемента navigation
. Итак, теперь мы устанавливаем цвет фона так.
#navigation .current {
background-color: #000;
}
Итак, наш окончательный CSS будет выглядеть так.
#navigation a {
background-color: #333;
}
#navigation .current {
background-color: #000;
}
Обратите внимание, что заказ важен! Если бы мы сначала поставили второе объявление, оно было бы отменено более общей декларацией ссылки.
Эй, спасибо за ответ с пояснениями по шагам! Я создал CSS на основе этого, но, однако, когда я нахожусь на другой ссылке (скажем, в портфолио), фон не изменился. Все ссылки остались серыми. – bn60
@ user1433571 Не могли бы вы разместить свой код на веб-сайте, например [jsFiddle] (http://jsfiddle.net/)? Таким образом, мы можем видеть, как выглядит ваш код. –
Это код, который вы хотели? http://jsfiddle.net/QHMSa/11/ btw, любая идея, как установить поле над «Домом», чтобы быть темным? – bn60