Dropdown menu's puur uit css werken niet in IE ?

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb laats geprobeerd met een css code een dropdown menu te maken
vervolgens heb ik hem in mozilla firefox bekeken en het werkte allemaal naar behoren
toen kwam mijn vader de kamer binnen en maakte mij er op attent dat ik de code ook in andere browsers zou moeten testen, hier kwamen dus de problemen. IE laat de butten wel goed zien maar het drop down menu
werkt niet
Hier is de code

[code=html]
<html>
<head>
<style type="text/css">
#contactlink
{
margin: 0px;
padding: 0px;
}
#contactlink ul
{
margin: 0px;
padding: 0px;
line-height: 30px;
}
#contactlink li
{
margin: 0px;
padding: 0px;
list-style: none;
float: left;
position: relative;
background-color: #666666;
border: 1px solid #FFFFFF;
}
#contactlink ul li a
{
text-align: center;
font-family:"Comic Sans MS", cursive;
text-decoration: none;
height: 35px;
width: 107px;
display: block;
color: #FFFFFF;
text-shadow: 1px 1px 1px #000000;
}
#contactlink ul ul
{
position: absolute;
visibility: hidden;
top: 36px;
}
#contactlink ul li:hover ul
{
visibility: visible;
}
#contactlink li:hover
{
background-color: #0072ff;
}
#contactlink ul li:hover ul li a:hover
{
color: #000000;
background-color: #999999;
}
</style>
</head>
<body>
<div id="contactlink">
<ul>
<li><a href="#">Contact</a>
<ul>
<li><a href="#">E-Mail</a></li>
<li><a href="#">Telefoon</a></li>
</ul>
</li>
</ul>
</div>
</body>
</html>
[/code=html]


nu is mijn vraag:
is het mogelijk om dit soort menu's te maken in css en ze werkend te krijgen in zowel Mozilla als IE
of is dit bij voorbaat al onmogelijk

Acties:
  • 0 Henk 'm!

  • Tharulerz
  • Registratie: April 2009
  • Laatst online: 10-04 05:16
Probeer eens met de display property ipv visibility?

Acties:
  • 0 Henk 'm!

  • Aganim
  • Registratie: Oktober 2006
  • Laatst online: 17:30

Aganim

I have a cunning plan..

is het mogelijk om dit soort menu's te maken in css en ze werkend te krijgen in zowel Mozilla als IE
of is dit bij voorbaat al onmogelijk
Zoek voor de grap eens in Google naar Horizontal of Vertical icm "css menu", dan kom je al snel tientallen voorbeelden die in de meeste browsers werken, al dan niet icm met een stukje javascript.

Bedenk voor jezelf echter wel tot hoever je de ondersteuning wilt laten gaan, IE6 is bijvoorbeeld vaak weer een geval apart om goed werkend te krijgen.

Acties:
  • 0 Henk 'm!

  • 418O2
  • Registratie: November 2001
  • Laatst online: 21:52
visibility werkt idd niet.

Ik ben niet zo'n heel groot fan van kale CSSonly menu's, toch liever even wat JS erbij (m.n. HoverIntent maakt eea wat gebruiksvriendelijker)

Acties:
  • 0 Henk 'm!

  • Tharulerz
  • Registratie: April 2009
  • Laatst online: 10-04 05:16
Aganim schreef op woensdag 08 december 2010 @ 21:34:
[...]

Zoek voor de grap eens in Google naar Horizontal of Vertical icm "css menu", dan kom je al snel tientallen voorbeelden die in de meeste browsers werken, al dan niet icm met een stukje javascript.

Bedenk voor jezelf echter wel tot hoever je de ondersteuning wilt laten gaan, IE6 is bijvoorbeeld vaak weer een geval apart om goed werkend te krijgen.
Als hij een script van het internet plukt dan gaat hij het nooit zelf leren, toch?

Acties:
  • 0 Henk 'm!

  • Aganim
  • Registratie: Oktober 2006
  • Laatst online: 17:30

Aganim

I have a cunning plan..

Als hij een script van het internet plukt dan gaat hij het nooit zelf leren, toch?
Hij vroeg of het mogelijk was. Bovendien, van een script van internet halen, dit te doorgronden en met deze kennis aan de gang gaan kan je het ook leren, toch?

Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Welke versie van IE?

IE6 gaat in ieder geval niet lukken. 7 en 8 zouden op wat schoonheidsfoutjes na redelijk het zelfde moeten werken.

[ Voor 11% gewijzigd door mcDavid op 08-12-2010 22:03 ]


Acties:
  • 0 Henk 'm!

  • Wmm
  • Registratie: Maart 2002
  • Laatst online: 11-09 14:30

Wmm

Dit kan prima ook in IE werken, alleen IE6 is een bitch omdat deze :hover niet ondersteunt in css. Daar heb je dus wat javascript voor nodig, maar dat is maar minimaal.

Kijk eens op http://htmldog.com/articles/suckerfish/dropdowns/ voor een duidelijk uitleg hierover.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Wmm schreef op woensdag 08 december 2010 @ 22:07:
Dit kan prima ook in IE werken, alleen IE6 is een bitch omdat deze :hover niet ondersteunt in css. Daar heb je dus wat javascript voor nodig, maar dat is maar minimaal.

Kijk eens op http://htmldog.com/articles/suckerfish/dropdowns/ voor een duidelijk uitleg hierover.
Dank u

Acties:
  • 0 Henk 'm!

  • OkkE
  • Registratie: Oktober 2000
  • Laatst online: 04-09 08:16

OkkE

CSS influencer :+

Ik zou even een correct Doctype toevoegen om te voorkomen dat IE in quirksmode gaat. ;)

Zelf gebruik ik altijd de "left: -999em" en "left: auto" opties om een dropdown te tonen/verbergen.

“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.


Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
OkkE schreef op donderdag 09 december 2010 @ 09:36:
Ik zou even een correct Doctype toevoegen om te voorkomen dat IE in quirksmode gaat. ;)

Zelf gebruik ik altijd de "left: -999em" en "left: auto" opties om een dropdown te tonen/verbergen.
Om SEO-redenen?
Ik gebruik altijd gewoon display:none. Dat is er voor gemaakt dus dat gebruik ik er voor.

Acties:
  • 0 Henk 'm!

  • ieperlingetje
  • Registratie: September 2007
  • Niet online
lettertype Comic Sans MS gaat niet echt werken op alle computers.

Tijdmachine | Nieuws trends


Acties:
  • 0 Henk 'm!

  • OkkE
  • Registratie: Oktober 2000
  • Laatst online: 04-09 08:16

OkkE

CSS influencer :+

mcDavid schreef op donderdag 09 december 2010 @ 09:55:
[...]


Om SEO-redenen?
Ik gebruik altijd gewoon display:none. Dat is er voor gemaakt dus dat gebruik ik er voor.
Gewoonte voornamelijk.

Eerlijk gezegd nooit zo heel erg over nagedacht, zijn er voor- of nadelen aan één van de oplossingen, lijkt me vooral een kwestie van smaak?

“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.


Acties:
  • 0 Henk 'm!

  • MueR
  • Registratie: Januari 2004
  • Laatst online: 23:04

MueR

Admin Tweakers Discord

is niet lief

TS: Zou je voortaan je code met indenting willen posten, en waar mogelijk alle irrelevante CSS willen weghalen? Dat maakt het geheel wat leesbaarder.
ieperlingetje schreef op donderdag 09 december 2010 @ 10:10:
lettertype Comic Sans MS gaat niet echt werken op alle computers.
Het zou op geen enkele computer moeten werken. Comic Sans moet dood. Er is maar 1 verdedigbaar nut voor dat font, onsubtiel verborgen in het eerste woord in de naam.

Anyone who gets in between me and my morning coffee should be insecure.


Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
OkkE schreef op donderdag 09 december 2010 @ 10:13:
[...]

Gewoonte voornamelijk.

Eerlijk gezegd nooit zo heel erg over nagedacht, zijn er voor- of nadelen aan één van de oplossingen, lijkt me vooral een kwestie van smaak?
Nadeel van jouw oplossing is dat het element niet weg is maar alleen uit beeld schuift. Wat dus risico geeft met verschillende browsers, resoluties, enz.

Nadeel van display:none is dat weleens gezegd wordt dat zoekmachine-spiders verborgen elementen negeren... Alleen geloof ik er niet zo in dat die dingen überhaupt je CSS doornemen. En zo wel, dan zullen ze de truck met het buiten beeld plaatsen ook wel kennen lijkt me.


ieperlingetje schreef op donderdag 09 december 2010 @ 10:10:
lettertype Comic Sans MS gaat niet echt werken op alle computers.
Helaas wel, het zit in het MSttcorefonts pakket. Maar dat neemt niet weg dat ik het met Muer eens ben.

[ Voor 17% gewijzigd door mcDavid op 09-12-2010 16:14 ]


Acties:
  • 0 Henk 'm!

  • OkkE
  • Registratie: Oktober 2000
  • Laatst online: 04-09 08:16

OkkE

CSS influencer :+

mcDavid schreef op donderdag 09 december 2010 @ 16:12:
Nadeel van jouw oplossing is dat het element niet weg is maar alleen uit beeld schuift. Wat dus risico geeft met verschillende browsers, resoluties, enz.

Nadeel van display:none is dat weleens gezegd wordt dat zoekmachine-spiders verborgen elementen negeren... Alleen geloof ik er niet zo in dat die dingen überhaupt je CSS doornemen. En zo wel, dan zullen ze de truck met het buiten beeld plaatsen ook wel kennen lijkt me.
Van dat "risico" was ik op de hoogte ja, maar ik heb dat in praktijk nog nooit mis zien gaan. 999em is over het algemeen al snel 10000px, denk niet dat er veel mensen met zo'n resolutie zitten. :)

Het verbergen met display:none schijnt inderdaad door spiders genegeerd te worden, dat hoorde ik ook. Geen idee of dat nog zo is nee, maar ik heb begrepen dat screenreaders het zelfde doen? Dat zou ik (vooral uit princiepe) een groter probleem vinden.

Verder zijn, zover ik weet, de beide oplossingen vrijwel gelijk.

“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.


Acties:
  • 0 Henk 'm!

  • ajakkes
  • Registratie: Maart 2004
  • Laatst online: 16-05 22:32

ajakkes

👑

"Beide vormen gelijk"

Hoewel de uitwerking voor de bezoeker gelijk is, vind ik de uitwerking niet gelijk.
Met display:none vertel je de browser dat hij het nog even niet moet laten zien.
Met left: -999em misbruik je een functie om het gewenste effect te krijgen. Dit is natuurlijk prima als er geen andere oplossingen zijn maar naar mijn mening geen nette oplossing.

👑


Acties:
  • 0 Henk 'm!

  • R4gnax
  • Registratie: Maart 2009
  • Laatst online: 06-09 17:51
Cascading Stylesheet:
1
2
3
4
5
6
.hidden-accessible
{
  position: absolute;
  clip: rect(0px 0px 0px 0px);
  clip: rect(0px, 0px, 0px, 0px);
}


Werkt mooi samen met elementen die al absoluut gepositioneerd zijn, zoals dropdown menus. Elementen die op deze manier opgemaakt zijn worden ook niet door screenreaders genegereerd. Dit in tegenstelling tot elementen die direct of indirect onzichtbaar zijn gemaakt m.b.v. display: none of visibility: hidden.

(De syntax zonder komma's is officieel enkel een optionele syntax, die user agents niet hoeven ondersteunen. Echter is het de enige syntax die door IE6/7 ondersteund wordt. Vandaar beide varianten.)
Pagina: 1