HTML Linkliste durch zeichen trennen

glumada

Lieutenant
Dabei seit
Okt. 2009
Beiträge
579
Linkliste durch zeichen trennen [IE6-Problem]

Ich habe ein vorgegebenes Layout und in dem sollen in der Kopfzeile Links sein die so getrennt sind: " | " (in den Anführungszeichen).
Die Links befinden sich in einer Liste.

BSP:

Link1 | Link2 | Link3 | Link4


ich hab zb folgende möglichkeit gefunden:
li {
display:inline;
list-style-type:none;
padding-left:1em;
margin-left:1em;
border-left:1px solid
}

li:first-child {
border-left:none
}

doch da streikt der IE6.
gibt es eine möglichkeit das IE6 kompatibel umzusetzen?
 
Zuletzt bearbeitet:

benneq

Admiral
Dabei seit
Juli 2010
Beiträge
9.223
Also 2-3 Möglichkeiten hast du:
1. (finde ich am sinnvollsten): Du machst einfach mit Schrift einen Balken dahin. Warum denn unbedingt CSS, wenn es auch so ganz einfach geht und dann definitiv überall funktioniert?
2. (finde ich auch sinnvoll): Kack auf den IE6. Das ist einer der Gründe, warum die Erstellung von Webseiten ein großer Krampf ist! Außerdem hab Microsoft ganz offiziell den Support eingestellt.
3. (nicht so mein Ding): Es gibt diverse JS-Libraries, die deinen CSS-Code IE6 kompatibel machen
 

glumada

Lieutenant
Ersteller dieses Themas
Dabei seit
Okt. 2009
Beiträge
579
also zu 1: die links werden über ein CMS eingebunden
zu 2: würd ich gern, nur es soll eine Webseite für ne Schule werden, und es sollen auch Eltern mit nem IE6 ne ansprechende Homepage sehen.

zu3: gibt es keine non-JS lösung?
 
K

Kausalat

Gast
Spricht etwas dagegen, dem ersten Menüpunkt eine ID oder Klasse zuzuweisen und diese dann mit den Eigenschaften von "li:first-child" zu formatieren? Der IE 6 kann die :first-child-Anweisung nicht interpretieren.
 

benneq

Admiral
Dabei seit
Juli 2010
Beiträge
9.223
Also wenn wirklich jemand von denen den IE6 nutzt, sollten sie schnell den Platz mit ihren Kindern tauschen ;)

Aber dann hast du ja noch ne Möglichkeit: Dein CMS generiert(!) ja die Links und den HTML Code. D.h. du kannst da garantiert (zur Not im Quellcode selbst) die Funktion für die Darstellung manipulieren.

Ohne JS geht's wohl nicht. Da du ja dynamisch zur Laufzeit den CSS Code verändern willst (die andere Möglichkeit wäre halt die oben angesprochene im CMS Quellcode)... Alternativ ginge bestimmt noch ActiveX oder sowas, aber das dürfte man wohl noch weniger einsetzen wollen ;)
 

glumada

Lieutenant
Ersteller dieses Themas
Dabei seit
Okt. 2009
Beiträge
579
ahh danke, ich hab dadurch nochmal im cms nachgeschaut, man kann auch seperatoren setzen, muss ich hald zwischen alle links einen setzen, aber es geht auch in meinem Lieblingsbrowser :D

Nur fals es mal wer braucht:
In Joomla lies sich als menütitel des seperators nicht " | " setzen, " | " aber schon.
 
Zuletzt bearbeitet:
K

Kausalat

Gast
Wenn du wirklich nicht die semantisch korrekte CSS-Methode nutzen möchtest, so sei dir das nichtumbrechende Leerzeichen,  , von mir empfohlen ;).
 

Daaron

Fleet Admiral
Dabei seit
Dez. 2011
Beiträge
13.487
1. (finde ich am sinnvollsten): Du machst einfach mit Schrift einen Balken dahin. Warum denn unbedingt CSS, wenn es auch so ganz einfach geht und dann definitiv überall funktioniert?
Man sollte keine sinnlosen Zeichen in den lesbaren Teil des HTML-Codes packen, nur um irgendwo Trennlinien zu erzeugen. Das, was der User (und vor allem der Suchmaschinen-Crawler) am Ende erhält, sollte NUR wohlsortierter Inhalt sein, keine Füllmasse.


zu 2: würd ich gern, nur es soll eine Webseite für ne Schule werden, und es sollen auch Eltern mit nem IE6 ne ansprechende Homepage sehen.
Falsche Herangehensweise:
Zum Wohle eines modernen Netzes sollte man als Webdesigner & Programmierer alles tun, um Leute dazu zu zwingen, endlich ihre Browser zu aktualisieren. Es gibt KEINEN Grund, IE6 zu nutzen. Selbst wenn man nur Win2k nutzt (das letzte Windows, dass nur IE6 kann) kann man problemlos einen der freien, mächtigen Browser verwenden statt Microschrott.
Ich bin sogar schon dazu übergegangen a) Warnmeldungen für IE6-User einzublenden und b) leichte Layout-Bugs im IE7 nicht zu beheben. Überleg mal, wie lange man allein an einer Modifikation für den IE6 schreibt, nur damit anständige Dropdown-Menüs möglich werden.... und das nur, weil das Drecksding nur :hover für a-Elemente beherrscht. Ohne JS ist da kaum was zu machen, also versucht mans gar nicht erst.

Das einzige was man immer sicherstellen sollte: Kernfunktionen und -inhalte sollten ohne aktivem JavaScript verfügbar sein. Aber auch das ist nicht überall realisierbar.
 

T. Smith

Ensign
Dabei seit
März 2008
Beiträge
208
Je nachdem wo die Liste sitzt (linksbündig/zentriert/rechtsbündig), kannst du (mit mehr oder weniger Aufwand) einen IE6-Bug nutzen. Der IE6 schneidet Bereiche ab, die durch Verschiebung per neg. Margin aus ihrem umgebenden Element herausragen (das umgebende Element braucht dafür hasLayout). Das nennt sich "Clipping".
Sitzt die Liste also z.B. linksbündig, ziehst du sie um die Breite des Rahmens nach links.
 
Top