Om te voorkomen dat floats naar een nieuwe regel springen zul je het blok waar ze in staan een breedte moeten geven die genoeg is om alle plaatjes naast elkaar te laten staan. Je zou bijvoorbeeld een blok met width: 4000px kunnen aanmaken waarin je met javascript al die plaatjes zet, en dat blok in je blok met overflow: scroll; width: 80% zetten. Probleem is dat dit wel statisch is dus je moet van tevoren weten hoe breed al je plaatjes zijn. Of nog meer scripting toepassen om dat uit te lezen natuurlijk.quote:Op zondag 1 juli 2007 16:37 schreef SlimShady het volgende:
hoi,
ik probeer de Filmstrip in Windows XP na te maken.
de horizontale scrollbar heb ik voor mekaar en de plaatjes passen erin.
maar als je teveel plaatjes hebt, worden ze gewrapped (zoals de tekst op deze pag).
mijn vraag:
hoe voorkom je dat elementen onder elkaar worden gepositioneerd?
dat ze alleen horizontaal geplaatst worden?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> Test </title> <style type="text/css"> /*<![CDATA[*/ div.c1 { width: 85%; height: 85%; display: block; border-width: 2px; border-style: solid; } /*]]>*/ </style> </head> <body> <div class="c1" id="flipbar"> </div> </body> </html> |
Het werkt wel aardig als je in je css body, html {height: 100%} opneemt.quote:Op woensdag 4 juli 2007 19:15 schreef SlimShady het volgende:
vraagje:
waarom wordt in het volgende voorbeeld geen blok weergegeven?
[ code verwijderd ]
quote:Op woensdag 25 juli 2007 14:54 schreef __Saviour__ het volgende:
Hoe krijg ik een DIV netjes gecentreerd in het midden van het totale beeld?
Ik heb nu
margin-right:auto; margin-left:auto;
en dat werkt in Firefox. Maar IE7 zet het gewoon helemaal links
1 |
Volgens mij moest je de text-align van de parent op center zetten in IE (ik weet niet of dit ook geldt voor IE7).quote:
1 2 | div { margin: 0 auto; } |
je moet de div wel een breedte geven, als je dan margin: 0 auto geeft is het goed.quote:
Voor zover ik weet heeft een block-level element altijd een breedte van 100%. Dus je hoeft geen breedte mee te geven. De hoogte daarentegen heeft geen standaard waarde (of die is 0).quote:Op donderdag 2 augustus 2007 21:13 schreef Ewaldus het volgende:
[..]
je moet de div wel een breedte geven, als je dan margin: 0 auto geeft is het goed.
Dit geeft aan: margin-top: 0 (en tegenovergestelde ook want die is niet aangegeven) en margin-left en margin-right zijn auto.
als je semantisch code schrijft, bijv de margin en dan 4 waarden geeft (bijv. margin: 5px 10px 3px 15px;) dan is dat clockwise: top right bottom left.
Als je invult: margin: 5px 10px 3px; dan is de margin-left 10px, want dat is rechts ook.
Een block-level element neemt de volledige breedte in, maar dan heb je dus niets aan "margin: 0 auto", omdat er dan niets te centreren valtquote:Op vrijdag 3 augustus 2007 00:32 schreef DorentuZ het volgende:
[..]
Voor zover ik weet heeft een block-level element altijd een breedte van 100%. Dus je hoeft geen breedte mee te geven. De hoogte daarentegen heeft geen standaard waarde (of die is 0).
quote:Op zaterdag 4 augustus 2007 11:24 schreef CraZaay het volgende:
[..]
Een block-level element neemt de volledige breedte in, maar dan heb je dus niets aan "margin: 0 auto", omdat er dan niets te centreren valt
1 2 3 4 5 6 7 8 9 10 11 | width: 721px; margin: 15px auto; background: url(../../../layout/img/body_bg.gif) center top repeat-y; } #kop { width: 721px; height: 93px; background: url(../../../layout/img/kop_bg.gif) no-repeat; } |
1 2 3 4 5 6 7 | <div id="ad"><div style="margin-top: 150px; border: 1px solid black; width: 200px; text-align: left;"><h3>test</h3></div></div> <div id="kop">etc etc etc</div> etc etc etc |
Absoluut positioneren?quote:Op woensdag 15 augustus 2007 20:08 schreef Chandler het volgende:
Ik zit met het volgende.
Door een foutje in Firefox krijg ik het volgende niet werkend. Ik wil voor een website adsense (skyscraper) gaan gebruiken. Echter zit mijn complete website in een 'container' en deze is precies in het midden van de brouwser gepositioneerd. Nu wil ik graag aan de rechterkant (ongv 25 pixels vanaf de huidige 'container' de sky scraper plaatsen. Met de volgende code lukt dit in IE maar in Firefox staat hij links van de container en loopt een stukje in de container over!
[ code verwijderd ]
en zo plaats ik het
[ code verwijderd ]
Echter werkt dit dus niet in Firefox! hoe kan ik dit oplossen? CSS of een stukje javascript?
1 2 3 4 5 6 7 8 9 | width: 1000px; /* 200PX advertentie breedte */ position: absolute; top: 0px; left: 50%; margin: 0px 0px 0px -400px; z-index: 50; text-align: right; } |
Geen idee of 't werkt, maar maak eens een container voor je hele site (om alles in 't midden te zetten, kan in dit geval ook de body zijn geloof ik). Die positioneer je relatief (gewoon position: relative; meegeven, niets anders). Vervolgens positioneer je de ad op (breedte container + afstand 'spacer')px vanaf de linkerkant.quote:Op donderdag 16 augustus 2007 15:56 schreef Chandler het volgende:
Heeft iemand nog een oplossing voor mijn probleempje?
Of je pakt de "left" attribuut van de container, en plakt daar 1050 pixels aan.quote:Op donderdag 16 augustus 2007 17:00 schreef Chandler het volgende:
Ik begrijp je! echter zit ik met een aantal beperkingen
Had gehoopt dat eventueel gebruik van javascript icm stylesheets een uitkomst zou kunnen bieden
bv
schermbreedte / 2 + helft van container + 20px = begin positie nieuwe container voor adsense
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |