Autor |
Nachricht |
lowdoggnsu
Threadersteller
Dabei seit: 06.09.2005
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 09.03.2008 13:44
Titel
|
|
|
Vielen Dank m,
schon mal ein kleiner step forward.
Wie müsste(n) dann die Klasse(n) in CSS aussehen?
Gruß Dogg
|
|
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst So 09.03.2008 13:59
Titel
|
|
|
lowdoggnsu hat geschrieben: | |
Wie ist das jetzt zu verstehen?
Nochmal deutlich:
(bedingung) ? bedingung wahr, dann tue das : bedingung unwahr, dann tue das;
(ist die seite mit der id 12 angefordert) ? dann ist die klasse 'current': andernfalls ist die klasse 'normal';
Du musst dass natürlich für jeden Menüpunkt anpassen, das heißt du musst die Bedingung verändern
und die dementsprechende ID welche du über den QueryString übergibst einsetzen.
|
|
|
|
|
Anzeige
|
|
|
lowdoggnsu
Threadersteller
Dabei seit: 06.09.2005
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 09.03.2008 14:23
Titel
|
|
|
OK, danke. Habs jetzt richtig verstanden.
Nur funktioniert es leider noch nicht.
Der Link bleibt im selben Zustand, auch wenn er die Klasse current im class-Tag reinschreibt.
|
|
|
|
|
lowdoggnsu
Threadersteller
Dabei seit: 06.09.2005
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 09.03.2008 14:28
Titel
|
|
|
Könnte es eventuell daran liegen, dass das id-Tag im Weg liegt? Es ist nämlich so, dass das Link-Verhalten natürlich über
id gesteuert wird. Ich geb mal ein konkretes Beispiel:
CSS:
Code: |
a#home{
display:block;
width:76px;
height:25px;
background: transparent url(images/nav/home.jpg) 0px 0px no-repeat;
}
a:hover#home{
background: transparent url(images/nav/home_hover.jpg) 0px 0px no-repeat;
}
a:active#home{
background: transparent url(images/nav/home_active.jpg) 0px 0px no-repeat;
}
a.current_home {
background: transparent url(images/nav/home_active.jpg) 0px 0px no-repeat;
}
a.normal_home {
background: transparent url(images/nav/home.jpg) 0px 0px no-repeat;
}
|
PHP:
Code: |
<ul id="navigation">
| <li id="left"></li>
<li><a href="index.php?id=1" id="home" class="<?php echo ($_GET['id'] == '1') ? 'current_home': 'normal_home'; ?>"></a></li>
|
|
|
|
|
lowdoggnsu
Threadersteller
Dabei seit: 06.09.2005
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 09.03.2008 14:30
Titel
|
|
|
Opps, da war ich wohl etwas voreilig mit der Enter-Taste.
Also nochmal:
PHP:
Code: |
<ul id="navigation">
<li id="left"></li>
<li><a href="index.php?id=1" id="home" class="<?php echo ($_GET['id'] == '1') ? 'current_home': 'normal_home';
?>"></a></li>
|
Sorry for that [/code]
|
|
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst So 09.03.2008 14:42
Titel
|
|
|
Du kannst deine Beiträge auch bearbeiten.
Und sorry, natürlich macht es mehr Sinn anstatt einer Klasse eine ID #current zu vergeben.
Das Problem ist dass die #home Regel mehr Gewicht hat als deine Klasse .current_home und
somit diese nicht angewendet wird. Zum Thema:
http://jendryschik.de/wsdev/einfuehrung/css/kaskade
http://www.google.de/search?q=css+kaskade
Zuletzt bearbeitet von m am So 09.03.2008 14:48, insgesamt 2-mal bearbeitet
|
|
|
|
|
lowdoggnsu
Threadersteller
Dabei seit: 06.09.2005
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 09.03.2008 14:55
Titel
|
|
|
Stimmt. Hab den Edit-Button übersehen.
Dank auch für die links. Zwar helfen diese mein CSS-Verständnis zu verbessern, aber leider nicht mein Problem zu lösen.
So wie es aussieht scheint es wohl doch eher ein schwerwiegenderes Problem zu sein...
Könnte man nicht PHP in das Stylesheet einbinden und die Endung css.php verwenden?
Zuletzt bearbeitet von lowdoggnsu am So 09.03.2008 14:56, insgesamt 1-mal bearbeitet
|
|
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst So 09.03.2008 15:01
Titel
|
|
|
Das könnte man, aber wozu? Die Links sollten dir nur helfen zu verstehen weshalb deine
Klasse nicht angewendet wird und das ist doch die Lösung für das Problem. Du sagst doch
im Quelltext ist die Klasse bzw. ID zur Markierung der aktiven Seite vorhanden, dann war´s
dass auch schon von Server Seite aus und den Rest kannst du per CSS erledigen. Lege dir
eine ID current an oder aber entferne die ID´s der Hyperlink Elemente denn dann greift auch
die Klasse current, aber wie erwähnt solltest du eine ID anlegen usw...
|
|
|
|
|
|
|
|
Ähnliche Themen |
Javascript-Menu
javascript menu II
[JavaScript] Drop Down Menu
CSS-drop-down-menu OHNE javascript
simple javascript accordian menu - menü soll offen bleiben
Mobile Design - Objekte Sichtbar und Sichtbar Bootstrap
|
|