login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Pagina te breed bij kleiner venster, horizontale scroll-bar verschijnt

Offline tvbt - 30/01/2016 08:12 (laatste wijziging 30/01/2016 08:16)
Avatar van tvbtNieuw lid Ik ben al een paar dagen bezig met het opzetten van een website. Ik heb geprobeerd een responsive design te maken. Daarvoor heb ik wat tutorials gelezen en ben met wat voorbeeldmateriaal aan de slag gegaan.
Als ik de site open met bijvoorbeeld een smartphone of ik verklein mijn browser op de computer, ontstaat er een horizontale scroll-bar en is het design van de pagina te breed. De header en de footer lopen ook niet meer over de gehele breedte.
Ik kom er niet uit waar de fout zit.

Dit is de CSS:
Plaatscode: 142486

Dit is de HTML:
Plaatscode: 142487

5 antwoorden

Gesponsorde links
Offline Thomas - 30/01/2016 15:44
Avatar van Thomas Moderator Welkom.

Heb je ook ergens een werkend voorbeeld? Dat is wellicht wat makkelijker.

Er ontbreekt nog een CSS en een JavaScript bestand?

Het lijkt er in ieder geval op dat de "5%" in de #main style van regel 64 de boosdoener is.
Offline tvbt - 30/01/2016 17:20
Avatar van tvbt Nieuw lid Werkend voorbeeld heb ik op: http://thijsvanbree.nl/test/

Het ligt inderdaad aan de 5% in regel 64! Nadeel is alleen als ik die in 0% verander dat mijn lay-out veranderd en het main-deel opschuift naar links. Kan ik dat ook op een andere manier in het midden houden?

Het andere CSS-bestand:
Plaatscode: 142488

Het JS-bestand: Plaatscode: 142489
Offline Thomas - 30/01/2016 23:30
Avatar van Thomas Moderator Euh, gewoon een padding geven? Of dit in de onderliggende div doen (hetzij een margin, hetzij een padding)? Meerdere oplossingen mogelijk om ergens wat "lucht" te introduceren.
Offline tvbt - 31/01/2016 07:13
Avatar van tvbt Nieuw lid Bedankt!
Soms staar je je zo blind op dingen en heb je even nodig dat iemand anders meekijkt.
Offline Thomas - 31/01/2016 15:35
Avatar van Thomas Moderator Het lijkt mij ook een beetje een kwestie van een gevoel ontwikkelen voor het gebruik van HTML+CSS.

Ik weet niet hoeveel ervaring je hier al mee had voordat je begon met responsive design maar als je wat handigheid hebt met en redeneert via het CSS box model dan kom je hier al best een eind mee.

(o.a.) De marge wordt bij de afmetingen van de (content van de) box opgeteld, dus als een box een marge heeft (en de content al 100% van de beschikbare breedte in beslag neemt) dan wordt de totale breedte van de box groter dan wellicht de bedoeling was zoals bij jouw oorspronkelijke probleem gebeurde.

Daarnaast heeft volgens mij elke moderne browser een developer console met hierin een "element inspector", te vinden onder de functietoets F12. Meestal zit er een icoon met een pijltje linksboven in deze balk met tooltips als "Click an element in the page to inspect". Vervolgens kun je door je pagina heenscrollen en over de verschillende elementen heen zweven. In je console zie je je DOM-structuur en CSS-klasses meespringen. De oorzaak voor jouw probleem had ik dus op deze manier ook redelijk snel gevonden. Er was één box die verdacht veel uitstak . Vervolgens kun je in je console interactief de CSS wijzigen, om realtime te zien wat het effect van een wijziging is (in plaats van de ouderwetste methode van trial en error waarbij je een CSS-regel aanpast en vervolgens de pagina ververst). Toen ik de margin uit de #main klasse schrapte was het ongewenste gedrag weg.

Door een slimme gebruikmaking van dit soort gereedschap kan ontwikkeling enorm versneld worden en wordt het opsporen van dit soort zaken een stuk eenvoudiger.
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.175s