Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[CSS] div centreren + min width

Pagina: 1
Acties:
  • 622 views sinds 30-01-2008
  • Reageer

  • X-trace
  • Registratie: Juni 2004
  • Laatst online: 02-11-2024
Ik wil dat mijn site wordt gecentreerd. Hiervoor maak ik gebruik van de "margin:0px auto + width:...px" fix. Echter geef je hierbij een breedte op waardoor dit vast staat.
Nu wil ik dat de width een minimum waarde heeft. Wordt er in de div een blok geplaatst die breder is, moet de site mee scalen, dus breder worden. Weet iemand of dit mogelijk is?

You cannot not communicate


  • Little Penguin
  • Registratie: September 2000
  • Laatst online: 08-06 20:43
Met div-layout is dat volgens mij niet mogelijk, het enige alternatief dat ik kan bedenken dat is:
http://www.w3.org/TR/REC-CSS2/tables.html

Door je layout op een grid te baseren zou het eventueel wel mogelijk kunnen zijn - alleen heb ik dat niet getest (is dus alleen maar een idee) en wordt dit niet door IE ondersteund.

Hopenlijk dat IE8 wel aan de volledige CSS2 standaard voldoet, maar daar heb je dus niets aan...

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 08:56

Janoz

Moderator Devschuur®

!litemod

Ondersteund IE met versie 7 nog steeds niet de min-width property?

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • X-trace
  • Registratie: Juni 2004
  • Laatst online: 02-11-2024
De table method had ik ook al in gedachte, maar heb liever de div. Verder moet het 100% IE proof zijn, en ook IE6 (*zucht ja...)

You cannot not communicate


  • Little Penguin
  • Registratie: September 2000
  • Laatst online: 08-06 20:43
X-trace schreef op dinsdag 09 oktober 2007 @ 10:35:
De table method had ik ook al in gedachte, maar heb liever de div. Verder moet het 100% IE proof zijn, en ook IE6 (*zucht ja...)
Verwar de table/grid layout niet met het gebruik van het table-element - het zijn 2 hele verschillende zaken. (Layout vs. semantics).

Maar als je IE6/7 compatible moet zijn is een CSS2 layout dmv de table-eigenschappen inderdaad geen optie. Het enige dat eventueel mogelijk zou zijn (mijns inziens) dat is d.m.v. javascript dynamisch de breedte van de inhoud bepalen en daarna de breedte van de container instellen...

  • Padschild
  • Registratie: September 2004
  • Laatst online: 28-11-2020
Kan het even niet uitproberen in Firefox, maar werkt dit niet?

* html hack voor IE6 (en misschien 7?), dit werkt bij mij in ieder geval in IE6. Zit op m'n stageplek, kan nu dus niet kijken of dit werkt in IE7 en Firefox.

HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>

<head>
    <title>Test</title>
    <style>
    div.test
    {
    margin: 0 auto;
    min-width: 50px; /* minimale breedte voor FF (en IE7?) */
    border: 1px solid blue;
    }

    * html div.test
    {
    width: 50px; /* minimale breedte voor IE6 (en IE7?) */
    }
    </style>
</head>
<body>
    <div class="test">Hoi</div>
    <div class="test">Hoiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii</div>
</body>

</html>

[ Voor 8% gewijzigd door Padschild op 09-10-2007 11:46 . Reden: Comments en tagje vergeten ]


  • X-trace
  • Registratie: Juni 2004
  • Laatst online: 02-11-2024
Padschild schreef op dinsdag 09 oktober 2007 @ 11:41:
Kan het even niet uitproberen in Firefox, maar werkt dit niet?

* html hack voor IE6 (en misschien 7?), dit werkt bij mij in ieder geval in IE6. Zit op m'n stageplek, kan nu dus niet kijken of dit werkt in IE7 en Firefox.
Even getest maar helaas. Werkt in beide browsers (IE7 & FF) niet :(

You cannot not communicate


  • Padschild
  • Registratie: September 2004
  • Laatst online: 28-11-2020
X-trace schreef op dinsdag 09 oktober 2007 @ 11:56:
[...]


Even getest maar helaas. Werkt in beide browsers (IE7 & FF) niet :(
Rotstreek, met de hoogte werkte dit namelijk altijd wel :(

Javascript is inderdaad nog wel een mogelijkheid, maar een beetje een ranzige oplossing...

Waarvoor wil je het eigenlijk gaan gebruiken?

  • X-trace
  • Registratie: Juni 2004
  • Laatst online: 02-11-2024
Javascript doe ik liever niet. Is voor een spelletjes website. Veel bezoekers dus, en ook mensen die misschien een oudere pc hebben.

You cannot not communicate


  • Kiphaas7
  • Registratie: Februari 2005
  • Laatst online: 30-11 19:58
http://www.cssplay.co.uk/boxes/width.html

En dit dan? Gewoon gegoogled op min-width IE....

  • Goku33
  • Registratie: Oktober 2002
  • Laatst online: 25-11 14:32

Goku33

Ownage!

Als je nou gewoon jouw div maakt met een breedte van 100% zodat ie als ie in een grotere div wordt geplaatst gewoon meeschaalt. In jouw div zet je dan weer een andere div met een vaste breedte (bv 200px als dat je minimum waarde moet zijn). Kleiner dan 200px zal jouw div dan toch niet worden maar als de mogelijkheid er is, wel groter?

  • Blue-eagle
  • Registratie: September 2000
  • Niet online
Hmm. Dit werkt bij mij.

HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>Flexible DIV with min-width</title>
<style type="text/css">
    body { text-align: center; }
    #main { width: 70%; margin: 0 auto; background: #aaa; border: 1px solid black; min-width: 500px; height: 500px; }
    #min-width { float: left; clear: all; width: 500px; height: 1px; font-size: 1px; overflow: hidden; }
</style>
</head>

<body>

<div id="main">
    <div id="min-width"> </div>
</div>

</body>
</html>


Edit: getest in IE6, IE7, Firefox, Safari en Opera. Het werkt O+
Edit2: Ik zou zelf trouwens die "foute" #min-width toevoegen via JS als de browser dit vereist. Dan blijft je HTML schoon, en die JS functie kan je later weer heel makkelijk uitzetten.. over 20 jaar.. als Firefox 99% van de markt in handen heeft :+

[ Voor 21% gewijzigd door Blue-eagle op 09-10-2007 14:57 ]

Pagina: 1