[CSS] Tabel / cell hoogte gelijk aan inhoud en css + browser

Pagina: 1
Acties:

  • DerKleinePunkt
  • Registratie: November 2004
  • Niet online

DerKleinePunkt

Es gibt keine kleinen Punkte!

Topicstarter
Hallo allemaal,

Vraag 1:
Mijn gedachte; laat ik eens een table en div maken die even hoog zijn als hun inhoud. Leek me simpel, maar toch wil het mij niet lukken (gaat zich schamen in een hoekje). Het probleem is dat ik steeds een witruimte heb aan de boven en onderkant van de div en table (td). Zoals in de css code is te zien heb ik alle paddings en margins op nul staan. Tevens heb is er een border-collapse ingesteld en onnodige spaties in de html-code weggehaald. Ik heb het geprobeerd met alleen html-code m.a.w. alleen een cellspacing en cellpadding gebruiken. M.b.v. een line-height kan ik de witruimte echter wel laten verdwijnen :?

De simpele html-code
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
        <meta http-equiv="content-style-type" content="text/css">
        <link rel="stylesheet" href="Testseite/test.css" type="text/css" title="Testseite">
        <title>
            Testseite baby!
        </title>
    </head>
    <body>
        <div id="tabeltest">
            <table><tr><td>tabeltest</td></tr></table>
        </div>
        <div id="divtest">
            divtest
        </div>
    </body>
</html>


De css code:

code:
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
26
27
28
29
#tabeltest table
{
    height: auto;
    width: auto;
    border-collapse: collapse;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-spacing: 0px;
}

#tabeltest td
{
    /*
    line-height: 75%;
    */
    font-size: 20px;
    margin: 0px 0px 0px 0px; 
    padding: 0px 0px 0px 0px;
}

#divtest
{
    font-size: 20px;
    margin: 0px 0px 0px 0px; 
    padding: 0px 0px 0px 0px;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-spacing: 0px;
}


Ik heb het bovenstaande nergens voor nodig, maar wil het nu gewoon weten :(


Vraag 2:
Mijn gedachte; Nu dat ik steeds meer css gebruik binnen mijn website begin ik me steeds meer te walgen aan de verschillen tussen de browsers. Is er überhaupt een mogelijkheid om elke browser op eenzelfde manier een pagina te laten renderen? De enige oplossing die ik me kan bedenken is door voor elke browser een andere css te gebruiken, wat zijn jullie gedachten hierover.

In mijn droomwereld zou ik IE over kunnen halen pagina's te renderen zoals Firefox :D

Ein kleiner Punkt in einer grossen Welt


  • Tonio
  • Registratie: Juli 2003
  • Niet online

Tonio

terrible gibberish

(overleden)
Om even je 2de vraag te beantwoorden:
Je hebt zogenaamde conditional comments. Deze html comments worden genegeerd door IE waardoor de uit-gecommente html wordt gerenderd door IE. Hiermee kan je bijvoorbeeld een aparte stylesheet voor IE maken, waardoor je width's e.d. kan aanpassen ivm het verschillende boxmodel enz. Info over conditional comments kan je hier vinden.
Je zou dus bijv het als volgt kunnen gebruiken:
HTML:
1
2
3
4
<!-- standaard html head meuk -->
<link rel="stylesheet" href="default.css" type="text/css">
<!--[if IE]><link rel="stylesheet" href="ie.css" type="text/css"><![endif]-->
<!-- rest van je html document -->


Ik ga nu even je eerste vraag goed bekijken :P
Je hebt ontdekt waarvoor lineheight dient :D, namelijk om de hoogte van een lijn text in te stellen. Standaard staat deze net wat hoger dan de hoogte van de text, waardoor je deze witruimten krijgt :)
lees dit maar even :)

[ Voor 48% gewijzigd door Tonio op 27-05-2005 11:58 ]

D200|F90x|Leica M6|Yashica T3|Hasselblad 503cx
Nikon: 12-24/4|17-35/2.8|10,5mm/2.8|30mm/1.4|50mm/1.4|85mm/1.8|SB-800|SB-24|SB-26|MC-36
Zeiss: 80mm/2.8 50mm/4 ZM: 35mm/2
When the going gets weird... the weird turn pro


  • DerKleinePunkt
  • Registratie: November 2004
  • Niet online

DerKleinePunkt

Es gibt keine kleinen Punkte!

Topicstarter
Line-height was ik wel eens eerder tegengekomen (I feel so proud B) ) had deze alleen nog nooit nodig gehad. Maar het is wel leuk om te lezen dat ik een goede methode heb gebruik :+

De door jouw genoemde browsersmethode ziet er handig uit. Het voorbeeld van Microsoft is wel leuk, hij controleert alleen op IE en dat is nou net wat ik wil (zouden ze toen al geweten hebben dat hun browsers uiteindelijke slechte css ondersteuning zou bieden :P)

Bedankt voor de info.

Naar aanleiding van vraag 2, is het eigenijk mogelijk een browser een alternatieve rendermethode aan te bieden bijv. m.b.v. een verwijzing naar een extern bestand? In principe dus hetzelfde als css, alleen wordt er de browser verteld hoe te renderen.

Ein kleiner Punkt in einer grossen Welt


  • Tonio
  • Registratie: Juli 2003
  • Niet online

Tonio

terrible gibberish

(overleden)
Het enige wat je zou kunnen doen is de browser in de zogenaamde 'Quirksmode' forceren, maar dat is nou niet echt iets wat je expres zou willen doen gok ik :P :
Using an incomplete or outdated DOCTYPE—or no DOCTYPE at all—throws these same browsers into “Quirks” mode, where the browser assumes you’ve written old-fashioned, invalid markup and code per the depressing industry norms of the late 1990s.

In this setting, the browser will attempt to parse your page in backward–compatible fashion, rendering your CSS as it might have looked in IE4, and reverting to a proprietary, browser–specific DOM. (IE reverts to the IE DOM; Mozilla and Netscape 6 revert to who knows what.)
:+

D200|F90x|Leica M6|Yashica T3|Hasselblad 503cx
Nikon: 12-24/4|17-35/2.8|10,5mm/2.8|30mm/1.4|50mm/1.4|85mm/1.8|SB-800|SB-24|SB-26|MC-36
Zeiss: 80mm/2.8 50mm/4 ZM: 35mm/2
When the going gets weird... the weird turn pro


  • DerKleinePunkt
  • Registratie: November 2004
  • Niet online

DerKleinePunkt

Es gibt keine kleinen Punkte!

Topicstarter
Elite_Dead schreef op vrijdag 27 mei 2005 @ 12:08:
Het enige wat je zou kunnen doen is de browser in de zogenaamde 'Quirksmode' forceren, maar dat is nou niet echt iets wat je expres zou willen doen gok ik :P :


[...]


:+
Jaah, dat is precies wat ik wil :+ (LOL)

Ein kleiner Punkt in einer grossen Welt