Jump to content
  • 0

Стиль ссылки текущей страницы.


SHo
 Share

Question

Есть сайт с ссылками-меню в виде списка из 5 пунктов ведущих на свою страницу:

Link 1

Link 2

Link 3

Link 4

Link 5

Этот список включил в документ на главное и на каждой из 5 страниц <? include(menu-block.php'); ?>

В стилях прописан: a:active {color: #000000; text-decoration:none;}

По идее, находясь, к примеру, на второй ссылке, вид меню должен быть таким:

Link 1

Link 2

Link 3

Link 4

Link 5

Но в меню все-равно все ссылки подчеркнут.

Что не так делаю?

Link to comment
Share on other sites

17 answers to this question

Recommended Posts

  • 0
Есть сайт с ссылками-меню в виде списка из 5 пунктов ведущих на свою страницу:

Но в меню все-равно все ссылки подчеркнут.

Что не так делаю?

:active - псевдокласс. Это состояние ссылки, когда она нажата. Вам, скорее всего, нужно указывать класс .active

Link to comment
Share on other sites

  • 0

SHo, это делается на PHP примерно так

<?php
$menu[0][0] = "Главная";
$menu[0][1] = "/";
$menu[1][0] = "Вторая";
$menu[1][1] = "/second.html";
$menu[2][0] = "Третья";
$menu[2][1] = "/third.html";
echo "<ul class=\"menu\">";
for ($i = 0; $i < count($menu); $i++)
{
if ("http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] == "http://".$_SERVER['SERVER_NAME'].$menu[$i][1]) {
echo "<li class=\"active\">".$menu[$i][0]."</li>";
}
else {
echo "<li><a href=\"".$menu[$i][1]."\">".$menu[$i][0]."</a></li>";
}
}
echo "</ul>";
?>

Link to comment
Share on other sites

  • 0

Если нужно убирать ссылки, то только стилями не обойтись, а если достаточно изменить отображение, то можно и только стилями.

Каждому пункту задается id (например: l1,l2,l3,l4...).

Каждой странице задается свой стиль для body (например: b1,b2,b3,b4...).

Ну а в общей таблице стилей пишем как-то так:

b1 #l1 a, b2 #l2 a, b3 #l3 a, b4 #l4 a {text-decoration: none;}

Link to comment
Share on other sites

  • 0

Веселый у вас форум)

А должно было? blink.gif

Я, вообще-то, от балды написал...

Каждой странице задается свой стиль для body

Зачем писать от балды? Я в этой жизни что-то упустил? Эм?

Каждой странице присваивать отдельные стили, чтобы убрать подчеркивание... Мдя...

Ладно, я старый, злобный тролль и вообще ничего не понимаю ни в вёрстке, ни в программировании. Больше не беспокою.

Link to comment
Share on other sites

  • 0
Зачем писать от балды? Я в этой жизни что-то упустил? Эм?

Каждой странице присваивать отдельные стили, чтобы убрать подчеркивание... Мдя...

Потому что вы, уважаемый, не удосужились адекватно задать вопрос.

menu-block.php где? Как вы его включали? Что вы сделали в этом файле? А фиг его знает. Остается только догадываться...

Я вам дал подсказку, что нужно использовать класс а не псевдокласс, но вы, по недостатку знаний, его пропустили мимо ушей. Вместо того, чтобы читать документацию, вы начали бездумно применять мою подсказку. Результат был вполне предсказуем.

Хотите, чтобы вам давали нормальные ответы? Так перестаньте испытывать наши телепатические способности и начните задавать вопросы адекватно!

Link to comment
Share on other sites

  • 0

s0rr0w, а ничего что вопрос не я задавал?) Посмотрите выше, и увидьте, что я как раз дал правильный ответ. А чтобы понять, что имел в виду топикастер, подключение telepathy.dll вовсе не требуется, ибо все вопросы на всех фоумах про "активные ссылки" подразумевают всегда лишь одно, и это именно то, о чем я и написал))

Link to comment
Share on other sites

  • 0
s0rr0w, а ничего что вопрос не я задавал?) Посмотрите выше, и увидьте, что я как раз дал правильный ответ. А чтобы понять, что имел в виду топикастер, подключение telepathy.dll вовсе не требуется, ибо все вопросы на всех фоумах про "активные ссылки" подразумевают всегда лишь одно, и это именно то, о чем я и написал))

Все, молчу. Реально торможу сегодня. Пошел работать :D

Link to comment
Share on other sites

  • 0

locky пробую по вашему совету

CSS

a:link {color: #0000FF;text-decoration: underline;}
a:active {color: #FF0000;text-decoration: none;}

PHP

<body>
<?php
$menu[0][0] = "link 1";
$menu[0][1] = "index.php";
$menu[1][0] = "link 2";
$menu[1][1] = "2.php";
echo "<ul class=\"menu\">";
for ($i = 0; $i < count($menu); $i++)
{
if ("http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] == "http://".$_SERVER['SERVER_NAME'].$menu[$i][1]) {
echo "<li class=\"active\">".$menu[$i][0]."</li>";
}
else {
echo "<li><a href=\"".$menu[$i][1]."\">".$menu[$i][0]."</a></li>";
}
}
echo "</ul>";
?>
WWW
</body>

http://sho.xor.net.ua/lab/index.php

Стиль текущей ссылки не поменялся и почему-то он меняется при нажатии (если нажать и зажать ссылку)

Searcher, тоже не получается

CSS

a:link {color: #0000FF; text-decoration: underline;}
b1 #l1 a, b2 #l2 a, b3 #l3 a, b4 #l4 a {text-decoration: none;}

HTML

<body id="b2">
<a href="3.php" id="l1">link 3 </a><br />
<a href="4.php" id="l2">link 4</a><br />
www
</body>

http://sho.xor.net.ua/lab/3.php

Edited by SHo
Link to comment
Share on other sites

  • 0
Searcher, тоже не получается

CSS

a:link {color: #0000FF; text-decoration: underline;}
b1 #l1 a, b2 #l2 a, b3 #l3 a, b4 #l4 a {text-decoration: none;}

HTML

<body id="b2">
<a href="3.php" id="l1">link 3 </a><br />
<a href="4.php" id="l2">link 4</a><br />
www
</body>

http://sho.xor.net.ua/lab/3.php

Правильно не получается. Потому что не b1 #l1, а #b1 #l1 и т.д. в данном случае.

Link to comment
Share on other sites

  • 0

Без изменений:

http://sho.xor.net.ua/lab/3.php

<style type="text/css">
<!--
a:link {color: #0000FF; text-decoration: underline;}
a:active {color: #00CC00;;text-decoration: none;}
#b1 #l1 a, #b2 #l2 a, #b3 #l3 a, #b4 #l4 a {text-decoration: none;}
-->
</style></head>

<body id="b2">

<a href="3.php" id="l1">link 3 </a><br />
<a href="4.php" id="l2">link 4</a><br />
www
</body>

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy