zurück zur Startseite
  


Zurück XHTMLforum > (X)HTML und CSS > CSS
Seite neu laden Navigation Test / Verbesserung (?)

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 16.09.2005, 23:03
Erfahrener Benutzer
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 02.06.2003
Beiträge: 2.441
ulle befindet sich auf einem aufstrebenden Ast
Standard Navigation Test / Verbesserung (?)

Hallo, ich schon wieder.

Ich habe mich ein einer horizontalen Navigation ala Wikipedia versucht. Das bisherige Ergebnis seht Ihr als CODE-Beilage. Lösungsweg war mit Listen als Inline-Element / Links als Inline-Element. Nun "überlappe" ich mit der Hintergrundfarbe und Innenabstand (unten) des Link die line-height Grenzen des UL-Element. Es funktioniert , zumindest im IE6 / FF1.06 / Opera 8.02. Auch bei Schriftgrad-Änderungen geht es nach Abstimmung der Innenabstände vom Link (padding-bottom) und dem UL-Element (padding-top). Bei Änderungen von font-weight / font-family / line-height ist die Abstimmung erneut notwendig.

Aber genau diese Abstimmarbeit macht mir Sorgen, hat vielleicht jemand einen anderen Lösungsweg. Oder geht es auch in den anderen Browsern mit diesem CODE Problemlos, leider habe ich nicht mehr Browser zum testen.

Danke im voraus.


Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de-DE" lang="de">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>xxxx</title>

<style type="text/css" media="screen,projection" title="Druckvorschau => Markup-Semantic">
/*<![CDATA[*/

*			{
			margin:  0;
			padding: 0;
			border-collapse:collapse;
			border-spacing: 0;
			}

html[xmlns]	{ 

			height : 100%; 
			padding-bottom : .005em; 
			} 

			
html,
body		{
			color:		#000000;
			background:	#FFDD22;
			
			line-height: 1.45;
			}

body		{
			font-size:   100.01%;
			font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
			}

			

#menu 		{
			width: 50em;

			margin: 2em auto;			
			border: 1px solid #666666;
			padding: 1em 1em 4em;
			
			background-color: #FFFFFF;
			
			/* sicherer Einzeiler 
			 */
			white-space: nowrap;	
			}



#menu strong
			{
			display: none;
			}
	
	
#menu ul	{
			list-style-type: none;

			margin: 0;
			border-bottom: 1px solid #000000;
			padding: .8em 0 0 2em;
			
			font-size: .8em;

			background-color: #EEEEEE;
			}

	
#menu li 	{
			display: inline;
			
			margin: 0 1em 0 0;
			padding: 0; 
						
			background-color: transparent;
			}
			
#menu li span,
#menu li a	{ 
			/* IE ~ sonst kein ueberschneiden 
			 * des UL border-bottom
			 */ 
			position: relative;
			
			border: 1px solid #000000;
			border-bottom: 0 none;
			padding: 0 .5em;
			
			color: #000000;
			background-color: #FFEECC;
			
			text-decoration: none;
			}
			
#menu li span,			
#menu li a:hover,
#menu li a:focus,
#menu li a:active
			{ 
			border: 1px solid #000000;
			border-bottom: 0 none;
			
			background-color: #FFCC22;
			}
	
#menu li span
			{
			/* padding-bottom => ueberschneiden 
			 * des UL border-bottom
			 * 
			 * padding-bottom: .172em in Abstimmung 
			 * mit UL padding-top: .8em
			 * (Schriftgrad Test 2x groesser OK) 
			 */
			padding: 0 .5em .172em;

			
			background-color: #FFFFFF;
			cursor: default;
			}

#menu li span:hover
			{
			border: 1px solid #555555;
			border-bottom: 0 none;
			
			color: #555555;
			}			
	

/*]]>*/ 
</style> 

</head> 
<body>


<div id="menu" title="Navigation">Hauptmenue
	<ul>
		[*]Item -- one  
		[*]Item - two  
		[*]<span title="Standort">Standort:Item three (activ) </span> 
		[*]Item -- four  
		[*]Item --- five  
	[/list]</div>



</body></html>
__________________
</ulle>
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 16.09.2005, 23:43
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 24.05.2004
Beiträge: 1.176
terrikay befindet sich auf einem aufstrebenden Ast
Standard Re: Navigation Test / Verbesserung (?)

Zitat:
Zitat von ulle
Oder geht es auch in den anderen Browsern mit diesem CODE Problemlos, leider habe ich nicht mehr Browser zum testen.
Ab IE5.5 funktioniert es problemlos. Im IE 5 funktioniert es nicht - weil der das margin bei den Listen nicht annimmt. Ist aber auf der Wikipedia-Seite genauso. Benutzbar ist die Navigation auch im IE 5.

Beim IE 5.5, Netscape 7.1 und auch Opera 6 funktioniert dagegen alles (mein Browserpark ist nun auch erschöpft).
__________________
Grüße,
Terry

... die immer noch sporadisch mitliest, auch wenn sie sich wenig zu Wort meldet ...
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 17.09.2005, 13:05
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 23.03.2005
Beiträge: 1.032
Swoop befindet sich auf einem aufstrebenden Ast
Standard

ie5 siehe Anhang...

opera 7.54 wurde glaub ich noch nicht genannt und funktioniert..

jedoch ist unterhalb der menüpunkte 1px freier Raum..(in allen Browsern, die ich testen konnte)
Angehängte Grafiken
Dateityp: png ie5.png (3,9 KB, 258x aufgerufen)
__________________
Shibby.....

Mein Blog
Mit Zitat antworten
  #4 (permalink)  
Alt 17.09.2005, 19:05
Erfahrener Benutzer
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 02.06.2003
Beiträge: 2.441
ulle befindet sich auf einem aufstrebenden Ast
Standard

Danke Euch für den Test, dann funktioniert es zwar wir gedacht.

@Swoop,
ja das mit dem IE5 ist klar, der kann keine Box-Model (links/rechts) Auszeichnungen. Das eine Pixel bei den "inaktiven" Card-Labels ist ja Absicht, so treten diese mehr in den Hintergrund bzw. wirkt optisch wie darhinter liegend.

Das der "aktive" die Line (boder-bottom von UL) überdeckt/lappt ist mir aber immer noch sehr unsicher. Ich glaube ich versuche es nochmal mit Listen-Elemente als Block-Elemente und Float. Hatte das zwar schon probiert aber nicht wirklich sauber hin bekommen.
Angehängte Grafiken
Dateityp: png test.png (1,3 KB, 228x aufgerufen)
__________________
</ulle>
Mit Zitat antworten
  #5 (permalink)  
Alt 18.09.2005, 09:09
Neuer Benutzer
neuer user
 
Registriert seit: 13.09.2005
Beiträge: 9
micha befindet sich auf einem aufstrebenden Ast
Standard Mac-Browser

Auf'm Mac funktioniert es unter Safari und Opera 7.54, im Firefox 1.0.6 ist der Abstand zur Grundlinie allerdings 2px (siehe Screen).

Mal eine Frage: was bezweckt die 100.01%-Angabe bei der font-Größe?

Micha
Angehängte Grafiken
Dateityp: png bild_1.png (7,4 KB, 210x aufgerufen)
Mit Zitat antworten
  #6 (permalink)  
Alt 18.09.2005, 11:24
Erfahrener Benutzer
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 02.06.2003
Beiträge: 2.441
ulle befindet sich auf einem aufstrebenden Ast
Standard Re: Mac-Browser

Zitat:
Zitat von micha
Auf'm Mac funktioniert es unter Safari und Opera 7.54, im Firefox 1.0.6 ist der Abstand zur Grundlinie allerdings 2px (siehe Screen).

Mal eine Frage: was bezweckt die 100.01%-Angabe bei der font-Größe?

Micha
Da haben wir das Problem, schon wird der "Aktive" unsauber angezeigt, die 2 Pixelabstand wären ja nicht schlimm, aber nun wird der UL-border-bottom nicht mehr überlappt.

BODY font-size: 100.01%
__________________
</ulle>
Mit Zitat antworten
  #7 (permalink)  
Alt 20.09.2005, 15:03
Erfahrener Benutzer
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 02.06.2003
Beiträge: 2.441
ulle befindet sich auf einem aufstrebenden Ast
Standard

So!

Nun habe ich das Design/Layout ein wenig verändert und die Navi mit float/block/relative realisiert. Dies erscheint mir Layout-Sicherer und müßte auch im IE5 gehen.

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de-DE" lang="de">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>xxxx</title>

<style type="text/css" media="screen,projection" title="Druckvorschau => Markup-Semantic">
/*<![CDATA[*/

*			{
			margin:  0;
			padding: 0;
			border-collapse:collapse;
			border-spacing: 0;
			}

html,
body		{
			color:		#000000;
			background:	#FFDD22;
			line-height: 1.45;
			}

body		{
			font-size:   100.01%;
			font-family:  Verdana, Geneva, Arial, Helvetica, sans-serif;
			}

.containing-float:after 
			{
			content: ".";
			visibility: hidden;			
			height:     0;
			display: block;
			clear: both; 
			}

			
.containing-float 
			{ 
			display: inline-table; 
			/* fuer alle Browser; 
			 * 
			 * verbergen IE-Mac \*/ 
			display: block; 
			/* ende verbergen IE-Mac */ 
			
			height: auto ! important; 
			height: 1%; 
			} 


#menu 		{
			width: 50em;

			margin: 2em auto;			
			border: 1px solid #666666;
			padding: 0 0 20em 0;
			
			background-color: #FFFFFF;
			white-space: nowrap;	
			}



#menu strong
			{
			display: none;
			}
	
	
#menu ul	{
			list-style-type: none;

			margin: 0;
			border-bottom: 2px solid #666666;
			padding: 1em 0 0px 2em;
			
			font-size: .8em; 	
			line-height: 1.3;
			
			background-color: #EEEEEE;
			}

	
#menu li 	{
			float: left;

			margin: 0 .7em 0 0;
			}
			
#menu li span,
#menu li a	{ 			
			display: block;

			width: auto ! important; 
			width: 1px; 
			
			margin: 0;
			border: 1px solid #555555;
			border-bottom: 0 none;
			padding: 0 .5em;
			
			color: #666666;
			background-color: #FFFEEE;
			
			text-decoration: none;
			font-weight: bold;
			}
			
#menu li a:hover	
			{ 
			color: #000000;
			background-color: #FFFF00;
			}
			

#menu li span	
			{ 
			position: relative;
			top: 2px;

			margin: 0 .5em;
			border: 2px solid #000000;
			border-bottom: 0 none;
			
			color: #000000;
			background-color: #FFFFFF;
			
			cursor: default;
			}


	

/*]]>*/ 
</style> 

</head> 
<body>


<div id="menu" title="Hauptnavigation">Hauptnavigation
	<ul class="containing-float">
		[*]Item - one  
		[*]Item -- two  
 		[*]<span title="Standort">Standort:Item --- three </span> 
		[*]Item ---- four  
		[*]Item ------ five  
		[*]Item six  
	[/list]</div>



</body></html>
__________________
</ulle>
Mit Zitat antworten
  #8 (permalink)  
Alt 20.09.2005, 16:24
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 23.03.2005
Beiträge: 1.032
Swoop befindet sich auf einem aufstrebenden Ast
Standard

alle von mir schon genannten browser + der opera 8.50 win machen es der ie5 win zerhauts..irgendwas bringt mich dazu zu denken, dass er das white space nicht richtig behandelt..
Angehängte Grafiken
Dateityp: png ie5_115.png (2,0 KB, 153x aufgerufen)
__________________
Shibby.....

Mein Blog
Mit Zitat antworten
  #9 (permalink)  
Alt 20.09.2005, 19:51
Erfahrener Benutzer
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 02.06.2003
Beiträge: 2.441
ulle befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Swoop
irgendwas bringt mich dazu zu denken, dass er das white space nicht richtig behandelt..
Ja genau das hatte ich befürchtet, nur ohne die Eigenschaft für white-space geht es wohl in keinem Browser, da weder die li-Element (float) noch die a-Elemente (block) einen Value für width besitzen. D.h. die Elemente passen sich dem Inhalt, ähnlich wie Inline-Elemente, an. Ich befürchte der IE5 kann wohl gar nichts mit white-space anfangen.

Ist dass denn beim IE-Mac genauso?

@Swoop
Eine Bitte hätte ich noch: hast Du mal versucht dem LINK direkt die Eigenschaft zu geben?


Code:
#menu li span,
#menu li a	{ 			
			white-space: nowrap; .........
__________________
</ulle>
Mit Zitat antworten
Sponsored Links
Antwort


Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
IE9: Höhe von Zeilen kann nicht fixiert werden MarkP1972 CSS 5 05.02.2014 15:52
DIV Box (Sidebar) in bereits fertiges Design einfügen? Daniel386 CSS 10 21.06.2011 22:58
Setzen von Minimalhöhe bei Kontentbox Christophe CSS 4 17.06.2009 08:24
Problem mit div und Höhe deep4 CSS 2 13.11.2007 20:03
3 Spalten Layout - Div Höhe aneinander angleichen Simsi CSS 3 01.01.2006 18:04


Alle Zeitangaben in WEZ +2. Es ist jetzt 05:46 Uhr.