ERLEDIGT
JA
JA
ANTWORTEN
5
5
ZUGRIFFE
1324
1324
EMPFEHLEN
-
24.11.10 16:38 #1
- Registriert seit
- Nov 2010
- Beiträge
- 3
Hallo Leute,
habe folgendendes Problem:
Ich baue gerade an einer Navigation, bei der ich mit einem hover Effekt arbeite.
Beim überfahren der Navigationspunkte soll sich die Farbe ändern (das funktioniert!) und beim anwählen des jeweiligen Navigationspunktes soll der Link die Hover Eigenschaften behalten.
Dazu benötige ich ja den active Befehl, aber irgendwie mache ich da was falsch, denn es funktioniert nict!
Ich benötige keine visited Funktion, habe diese aber mal vorsichtshalber mit eingebaut und die gleichen Werte wie beim nichtanklicken vergeben!
Der active Befehl soll dem hover Effekt 100% entsprechen!
also einfach nur die gleichen Werte und gleiche Farbe - aber dauerhaft!
Hier ein Auszug aus meiner .css Datei:
------------------------------------------------
.navi2
{
width: 1000px;
height: 32px;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 12px;
color: #482209;
}
.navi2 a:link
{
font-size: 12px;
color: #482209;
font-weight: bold;
text-decoration: none;
margin-top: 0px;
padding: 5px 8px;
}
.navi2 a:visited
{
font-size: 12px;
color: #482209;
font-weight: bold;
text-decoration: none;
margin-top: 0px;
padding: 5px 8px;
}
.navi2 a:active
{
color: #FFFFFF;
padding: 5px 8px;
}
.navi2 a:hover
{
color: #FFFFFF;
padding: 5px 8px;
}
------------------------------------------------
Ich bin für jede Hilfe dankbar, aber bitte kein Fachchinesisch, da ich kein Profi im programmieren bin!
Danke und Grüße sendet
Vatersbester
-
24.11.10 16:52 #2
- Registriert seit
- Apr 2009
- Ort
- Düsseldorf (NRW)
- Beiträge
- 508
:active gibt dem Link die Eigenschaften, wenn er gerade geklickt wird. Also solange die Maustaste unten ist. Um dauerhaft die Eigenschaften an den Link zu binden, musst du eine eigene Klasse dafür einführen, z.B.:
Code :1 2 3 4
.active { color: #FFF; padding: 5px 8px; }
HTML-Code:<a class="navi2 active" href="http://www.tutorials.de/css/...">...</a>
-
24.11.10 17:04 #3
- Registriert seit
- Nov 2010
- Beiträge
- 3
Danke für die schnelle Antwort, leider funktioniert as nicht!
Nochmals meine .css Datei mit Änderung:
-----------------------------------------
.navi2
{
width: 1000px;
height: 32px;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 12px;
color: #482209;
}
.navi2 a:link
{
font-size: 12px;
color: #482209;
font-weight: bold;
text-decoration: none;
margin-top: 0px;
padding: 5px 8px;
}
.navi2 a:visited
{
font-size: 12px;
color: #482209;
font-weight: bold;
text-decoration: none;
margin-top: 0px;
padding: 5px 8px;
}
.navi2 a:active
{
color: #FFFFFF;
padding: 5px 8px;
}
.navi2 a:hover
{
color: #FFFFFF;
padding: 5px 8px;
}
.active
{
color: #FFF;
padding: 5px 8px;
}
-----------------------------------------
uns so habe ich es in meiner Navigation eingebaut, die ich als eigenstänige Datei includiere!
-----------------------------------------
<div>
<a href="site.php?page=1" class="navi2 active">1</a>
<a href="site.php?page=2">2</a>
</div>
-----------------------------------------
Grüße sendet
Vatersbester
-
Grundsätzlich: Webmaster FAQ -> [CSS] Wie kann ich die aktuell geöffnete Seite im Navigationsmenü hervorheben?
Da hier aber offensichtlich keine neue Seite aufgerufen, sondern lediglich die Inhalte dynamisch per PHP im Dokument nachgeladen / ausgetauscht werden, helfen diese CSS-Techniken hier auch nicht weiter, sondern muß ebenfalls per PHP der aktuelle Link im Navigationsmenü hervorgehoben werden.
Beispiel:
PHP-Code:<?php
if (!empty($_GET['section']))
{
$section=$_GET['section'];
if ((strpos($section,"index")>-1) || (strpos($section,"http:")>-1) || (strpos($section,"https:")>-1) || (strpos($section,"ftp:")>-1))
{
header("Location:index.php");
}
else
{
include('inc/'.$section.".php");
}
}
else
{
include("inc/home.php");
}
?>PHP-Code:<?php
$entries=array('home','news','impressum');
if (isset($_GET['section']))
{
$section=$_GET['section'];
}
else
{
$section='home';
}
$styles=array();
for ($x=0;$x<count($entries);$x++)
{
if ($entries[$x]==$section)
{
$styles[$entries[$x]]='current';
}
else
{
$styles[$entries[$x]]='normal';
}
}
?>
<ul>
<li><a href="index.php?section=home" class="<?php echo $styles['home']; ?>">Home</a></li>
<li><a href="index.php?section=news" class="<?php echo $styles['news']; ?>">News</a></li>
<li><a href="index.php?section=impressum" class="<?php echo $styles['impressum']; ?>">Impressum</a></li>
</ul>Code css:1 2
a.normal { ... } a.current { ... }
Geändert von spicelab (24.11.10 um 17:55 Uhr)
-
24.11.10 17:55 #5
- Registriert seit
- Nov 2010
- Beiträge
- 3
Hallo spicelab,
vielen Dank, das war genau das was ich gesucht habe!
Habe in der .css Datei folgendes geändert:
--------------------------------
.navi2 a.active
{
color: #FFF;
padding: 5px 8px;
}
--------------------------------
und in der Navigation folgendes:
--------------------------------
<div>
<a href="site.php?page=1"<?php if ($_REQUEST['page'] == '1') echo ' class="active"'; ?>>1</a>
</div>
--------------------------------
Es funktioniert!
Danke für Eure Mühen und Grüße sendet
Vatersbester
Thema kann geschlossen werden!
-
Ähnliche Themen
-
Aktive Links
Von Binio im Forum Javascript & AjaxAntworten: 3Letzter Beitrag: 02.12.05, 18:22 -
Select Box farbig darstellen
Von Bencher im Forum PHPAntworten: 3Letzter Beitrag: 24.08.05, 09:54 -
ListView-Subitem farbig darstellen
Von JK_net im Forum .NET ArchivAntworten: 0Letzter Beitrag: 14.03.05, 14:10 -
Php Code farbig darstellen
Von Nucleus im Forum PHPAntworten: 3Letzter Beitrag: 11.09.03, 23:27 -
<href= tags farbig darstellen
Von loki2002 im Forum PHPAntworten: 10Letzter Beitrag: 05.08.02, 23:01





Zitieren

Login





