Avatar billede steen_hansen Forsker
22. september 2006 - 23:39 Der er 21 kommentarer og
1 løsning

Bredde i Opera giver 1px for meget

CSS:

html, body {
width: 100%;
height: 100%;
margin: 0px;
border-collapse: collapse;
padding: 0px;
background-color: #d7d7d7;
font-family: verdana, helvetica, tahoma, sans-serif, arial;
color: black;
font-style: normal;
font-weight: normal;
font-size: 11px;
}
.maintable {
width: 990px;
padding: 0px;
margin: 0px auto;
border-spacing: 0px;
}
.tdbanner {
width: 990px;
height: 90px;
padding: 0px;
background-color: #a7a7a7;
border-top: 1px solid black;
border-right: 1px solid black;
border-bottom: 1px;
border-left: 1px solid black;
}

HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>

<head>
<META HTTP-EQUIV="Expires" CONTENT="Fri, Jun 12 1981 08:20:00 GMT">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="content-type" content="text/html;charset=iso-8859-1">
<META HTTP-EQUIV="imagetoolbar" content="no">
<META HTTP-EQUIV="Content-language" content="dan">
<META NAME="robots" content="all">
<!--[if IE]>
<style type="text/css">
.maintable {
border-collapse: collapse;
}
</style>
<![endif]-->
<link rel="stylesheet" type="text/css" href="/includes/style.css">
<title>Titel</title>
</head>

<body>

<table class="maintable">
    <tr>
        <td class="tdbanner"></td>
    </tr>
</table>

</body>

</html>


Det er kun i Opera, at problemet opstår, men ikke i MSIE, FF og Mozilla. Hvorfor?
Avatar billede mclemens Nybegynder
22. september 2006 - 23:59 #1
fjern border-collapse: collapse; fra din html,body ...
Avatar billede mclemens Nybegynder
23. september 2006 - 00:02 #2
... Hvis border-collapse:collapse; på html,body var for at fjerne noget border
(f.eks. i IE) så kan du prøve med border:0px; synes ikke den gav bugs i min OP
Avatar billede steen_hansen Forsker
23. september 2006 - 00:13 #3
YO! :o)

Det løste det for Opera's vedkommende, men nu er den gal i MSIE:

Jeg har:

banner - højde på 90px inkl. border-top på 1px
"skillelinie" på 1px i højden
menu under banner på 30px i højden
"skillelinie" på 1px i højden

Nedenunder kommer så menu og indhold, men her bliver højden så variabel.

Det burde sammenlagt give 122px, er det korrekt? I MSIE bliver højden kun 29px istedet for de 30, som er rigtig nok i Opera, FF og Mozilla. Hvad er det, der går galt hele tiden? Dette spørgsmål er en forlængelse af det andet vi kigge på :o)
Avatar billede steen_hansen Forsker
23. september 2006 - 00:16 #4
Sludder, den er gal i alle browsere:

CSS:

html, body {
width: 100%;
height: 100%;
margin: 0px;
padding: 0px;
background-color: #d7d7d7;
background-image: url('/images/bodybg.gif');
font-family: verdana, helvetica, tahoma, sans-serif, arial;
color: black;
font-style: normal;
font-weight: normal;
font-size: 11px;
}
.maintable {
width: 992px;
padding: 0px;
margin: 0px auto;
border-spacing: 0px;
}
.tdbanner {
width: 990px;
height: 90px;
padding: 0px;
background-color: #a7a7a7;
border-top: 1px solid black;
border-right: 1px solid black;
border-bottom: 1px solid #7b7b7b;
border-left: 1px solid black;
}
.tdbannermenu {
width: 990px;
height: 30px;
padding: 0px;
background-color: #b5b5b5;
border-right: 1px solid black;
border-bottom: 1px solid #7b7b7b;
border-left: 1px solid black;
}


HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>

<head>
<META HTTP-EQUIV="Expires" CONTENT="Fri, Jun 12 1981 08:20:00 GMT">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="content-type" content="text/html;charset=iso-8859-1">
<META HTTP-EQUIV="imagetoolbar" content="no">
<META HTTP-EQUIV="Content-language" content="dan">
<META NAME="robots" content="all">
<!--[if IE]>
<style type="text/css">
.maintable {
border-collapse: collapse;
}
</style>
<![endif]-->
<link rel="stylesheet" type="text/css" href="/includes/style.css">
<title>Titel</title>
</head>

<body>

<table class="maintable">
    <tr>
        <td class="tdbanner"></td>
    </tr>
    <tr>
        <td class="tdbannermenu"></td>
    </tr>
</table>

</body>

</html>
Avatar billede mclemens Nybegynder
23. september 2006 - 00:19 #5
Kigger...
Avatar billede steen_hansen Forsker
23. september 2006 - 00:21 #6
Sludder igen-igen, den er gal med højden i Opera (bredden er rigtig nu).

CSS:

html, body {
width: 100%;
height: 100%;
margin: 0px;
padding: 0px;
background-color: #d7d7d7;
background-image: url('/images/bodybg.gif');
font-family: verdana, helvetica, tahoma, sans-serif, arial;
color: black;
font-style: normal;
font-weight: normal;
font-size: 11px;
}
.maintable {
width: 990px;
padding: 0px;
margin: 0px auto;
border-spacing: 0px;
}
.tdbanner {
width: 990px;
height: 90px;
padding: 0px;
background-color: #a7a7a7;
border-top: 1px solid black;
border-right: 1px solid black;
border-bottom: 1px solid #7b7b7b;
border-left: 1px solid black;
}
.tdbannermenu {
width: 990px;
height: 31px;
padding: 0px;
background-color: #b5b5b5;
border-right: 1px solid black;
border-bottom: 1px solid #7b7b7b;
border-left: 1px solid black;
}


HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>

<head>
<META HTTP-EQUIV="Expires" CONTENT="Fri, Jun 12 1981 08:20:00 GMT">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="content-type" content="text/html;charset=iso-8859-1">
<META HTTP-EQUIV="imagetoolbar" content="no">
<META HTTP-EQUIV="Content-language" content="dan">
<META NAME="robots" content="all">
<!--[if IE]>
<style type="text/css">
.maintable {
border-collapse: collapse;
}
</style>
<![endif]-->
<link rel="stylesheet" type="text/css" href="/includes/style.css">
<title>Titel</title>
</head>

<body>

<table class="maintable">
    <tr>
        <td class="tdbanner"></td>
    </tr>
    <tr>
        <td class="tdbannermenu"></td>
    </tr>
</table>

</body>

</html>
Avatar billede steen_hansen Forsker
23. september 2006 - 00:24 #7
Højden er rigtig i MSIE i tdbanner, men ikke i alle de andre. Her er tdbanner 1px for lav ...?
Avatar billede mclemens Nybegynder
23. september 2006 - 00:36 #8
Hmm, jeg lægger hovedet i blød :/
(men det tager tid, kan godt forstå din frustration
over det - jeg forstår heller ikke så meget af det ...)

... Men, lige m.h.t. størrelserne, så skal bredden på det være: 990px i ydre mål
tdbanner skal have en højde på 90 px incl. borderen i bunden og den i toppen
(den i toppen har p.t. lidt problemer i min FF også ...)

tdbannermenu skal have en højde på 31 px incl. borderen i bunden
Avatar billede mclemens Nybegynder
23. september 2006 - 00:38 #9
edit: men det tager tid skulle være -> men det ukendt tid (så hæng ikke ud efter et
svar iløbet af de næste par sekunder /minutter / ti... ... medmindre der kommer en anden med løsningen - eller jeg eller dig selv snubler over den ... )
Avatar billede steen_hansen Forsker
23. september 2006 - 00:41 #10
Ok. Hvor svært kan det være at lave

banner - 90px
"opdeler" - 1px
menu under banner - 30px
"opdeler" - 1px

- det kan være meget svært :o/ Er på vej i seng, vi snakkes :o)
Avatar billede mclemens Nybegynder
23. september 2006 - 00:44 #11
Jep, men i div's er det meget let :D
Avatar billede steen_hansen Forsker
23. september 2006 - 00:46 #12
Kan du lave det helt nøjagtigt? Lige på et ... mulehår?
Avatar billede steen_hansen Forsker
23. september 2006 - 00:47 #13
Jeg skal op om 4½ time. Håber du kan/vil lave noget brugbart :o)
Avatar billede mclemens Nybegynder
23. september 2006 - 00:54 #14
Løsningen med div's kunne se sådan her ud:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>

<head>
<META HTTP-EQUIV="Expires" CONTENT="Fri, Jun 12 1981 08:20:00 GMT">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="content-type" content="text/html;charset=iso-8859-1">
<META HTTP-EQUIV="imagetoolbar" content="no">
<META HTTP-EQUIV="Content-language" content="dan">
<META NAME="robots" content="all">
<link rel="stylesheet" type="text/css" href="style.css">
<title>Titel</title>
</head>

<body>

<div class="maintable">

        <div class="tdbanner"></div>

        <div class="tdbannermenu"></div>

</div>

</body>

</html>


og css:

html, body {
width: 100%;
height: 100%;
margin: 0px;
padding: 0px;
background-color: #d7d7d7;
background-image: url('/images/bodybg.gif');
font-family: verdana, helvetica, tahoma, sans-serif, arial;
color: black;
font-style: normal;
font-weight: normal;
font-size: 11px;
}
.maintable {
width: 990px;
padding: 0px;
margin: 0px auto;
}
.tdbanner {
width: 988px;
height: 90px;
background-color: #a7a7a7;
border-top: 1px solid black;
border-right: 1px solid black;
border-left: 1px solid black;
border-bottom: 1px solid #7b7b7b;
}

.tdbannermenu {
width: 988px;
height: 30px;
padding: 0px;
background-color: #b5b5b5;
border-right: 1px solid black;
border-bottom: 1px solid #7b7b7b;
border-left: 1px solid black;
}



... Så kunne man måske neste nogle tabeller indeni, hvis det var tabeller man ville køre ... Ser om jeg kan finde den px fejl ved tabellerne ...

- Nat, nat ;)
Avatar billede mclemens Nybegynder
23. september 2006 - 01:46 #15
En mulighed kan være denne her:
- Jeg har taget lidt css child styles med af hensyn til IE 7
... men det er helt utestet i IE 7 da jeg ikke har den - så på
det punkt er det kodet i blinde ... Grunden til at det blev så opstændeligt
skyldes to ting: 1. At IE ikke understøtter border-spacing og 2. At FF koksede
med bredden på tabellen når den fik border-collapse:collapse; (som vi fandt frem
til i den anden tråd) ... Det fik vi så løst, men jeg så ikke at forskellen så
opstod med højden på elementerne IE vs. FF & OP m.v.

Når IE 7 kommer bliver det nemmere og et skud i tågen er at den vil understøtte border-spacing og så vil man kunne slette conditional css delen :)




Her er lige den jeg nåede frem til:


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>

<head>
<META HTTP-EQUIV="Expires" CONTENT="Fri, Jun 12 1981 08:20:00 GMT">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="content-type" content="text/html;charset=iso-8859-1">
<META HTTP-EQUIV="imagetoolbar" content="no">
<META HTTP-EQUIV="Content-language" content="dan">
<META NAME="robots" content="all">
<!--[if IE]>
<style type="text/css">
.maintable {border-collapse: collapse;}
.maintable .tdbanner {height:91px;}
.maintable .tdbannermenu {height:32px;}
tr > .tdbannermenu {height:31px!important;}
</style>
<![endif]-->
<link rel="stylesheet" type="text/css" href="style.css">
<title>Titel</title>
</head>

<body>

<table class="maintable">
    <tr>
        <td class="tdbanner"></td>
    </tr>
    <tr>
        <td class="tdbannermenu"></td>
    </tr>
</table>
</body>

</html>

... Men, som det ses i ovenstående skal IE serveres speciel css fordi den ikke understøtter det med border-spacing ... her er css delen der hører dertil:




html, body {
width: 100%;
height: 100%;
margin: 0px;
padding: 0px;
background-color: #d7d7d7;
background-image: url('/images/bodybg.gif');
font-family: verdana, helvetica, tahoma, sans-serif, arial;
color: black;
font-style: normal;
font-weight: normal;
font-size: 11px;
}
.maintable {
width: 990px;
padding: 0px;
margin: 0px auto;
border-spacing: 0px;

}
.tdbanner {
width: 988px;
height: 92px;
padding: 0px;
background-color: #a7a7a7;
border-top: 1px solid black;
border-right: 1px solid black;
border-bottom: 1px solid #7b7b7b;
border-left: 1px solid black;
}
.tdbannermenu {
width: 988px;
height: 31px;
padding: 0px;
background-color: #b5b5b5;
border-right: 1px solid black;
border-bottom: 1px solid #7b7b7b;
border-left: 1px solid black;
}



....


....


....


eller måske samme css fil og noget i denne stil:
(så vi kun rammer IE < 7 ... men test evt. lige 7'eren så du er sikker)




<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>

<head>
<META HTTP-EQUIV="Expires" CONTENT="Fri, Jun 12 1981 08:20:00 GMT">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="content-type" content="text/html;charset=iso-8859-1">
<META HTTP-EQUIV="imagetoolbar" content="no">
<META HTTP-EQUIV="Content-language" content="dan">
<META NAME="robots" content="all">
<!--[if lt IE 7]>
<style type="text/css">
.maintable {border-collapse: collapse;}
.maintable .tdbanner {height:91px;}
.maintable .tdbannermenu {height:32px;}
</style>
<![endif]-->
<link rel="stylesheet" type="text/css" href="style.css">
<title>Titel</title>
</head>

<body>

<table class="maintable">
    <tr>
        <td class="tdbanner"></td>
    </tr>
    <tr>
        <td class="tdbannermenu"></td>
    </tr>
</table>
<div style="width:990px;background:red;margin:0px auto;">a</div>
</body>

</html>

... Afhængig af mængden af css til det conditional
css er det nok godt med en ekstern IE <7 css fil ...


- Muligheden er også at tage den med div'sene og integrere tabeller
(det bliver måske også nemmere m.h.t. colspan's og rowspan's ...)


... ser lige om jeg kan komme på en sidste ...
Avatar billede mclemens Nybegynder
23. september 2006 - 02:35 #16
Og så den sidste ... IE understøtter ikke border-spacing endnu ... men den understøtter den forældede cell-spacing ... så det kunne se sådan her ud:


(Når IE 7 så er godt introduceret så er det bare at
fjerne attributen ... måske? - har ikke IE 7 ...)

Eksemplet:






<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>

<head>
<META HTTP-EQUIV="Expires" CONTENT="Fri, Jun 12 1981 08:20:00 GMT">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="content-type" content="text/html;charset=iso-8859-1">
<META HTTP-EQUIV="imagetoolbar" content="no">
<META HTTP-EQUIV="Content-language" content="dan">
<META NAME="robots" content="all">
<link rel="stylesheet" type="text/css" href="style.css">
<title>Titel</title>
</head>

<body>

<table class="maintable" cellspacing="0">
    <tr>
        <td class="tdbanner"></td>
    </tr>
    <tr>
        <td class="tdbannermenu"></td>
    </tr>
</table>
<div style="width:990px;background:red;margin:0px auto;">a</div>
</body>

</html>





og css:


html, body {
width: 100%;
height: 100%;
margin: 0px;
padding: 0px;
background-color: #d7d7d7;
background-image: url('/images/bodybg.gif');
font-family: verdana, helvetica, tahoma, sans-serif, arial;
color: black;
font-style: normal;
font-weight: normal;
font-size: 11px;
}


.maintable {
width: 990px;
margin: 0px auto;
border-top: 1px solid black;
border-left: 1px solid black;
border-right: 1px solid black;
background: #7b7b7b;
border-spacing:0px;
}

.tdbanner {
width: 988px;
height: 91px;
background-color: #a7a7a7;
border-bottom:1px solid #7b7b7b;
}

.tdbannermenu {
width: 988px;
height: 31px;
background-color: #b5b5b5;
border-bottom:1px solid #7b7b7b;
}



- border-spacing:0px; i css'en er jo overflødig,
men så er det jo lidt klar til IE 7 (måske?)
Avatar billede mclemens Nybegynder
23. september 2006 - 02:37 #17
Så, nu er der 7 ½ til jeg skal op, så
det er nok på tide at hoppe til køjs ;)
Avatar billede steen_hansen Forsker
24. september 2006 - 09:20 #18
mclemens, du er jo grundig som altid! Flot! :o)

23/09-2006 00:54:41 ser spændende ud, men her tdmenu og tdcontent ikke med? På nogle af siderne skal jeg have 3 kolonner med: menu1 - indhold - menu2 - som skal ligge under tdbannermenu. Jeg har aldrig prøvet at sætte divs op, og har heller ikke gjort noget forsøg på sætte mig ind i det. Kan du hjælpe med det? :o)

Hvis det bliver modellen med divs, hvordan vil det stå distancen i fremtiden? Jeg tænker på XHTML. Mit mål er også at fremtidssikre det bedst muligt :o)
Avatar billede mclemens Nybegynder
24. september 2006 - 10:40 #19
.tdbanner og .tdbannermenu er begge med i 23/09-2006 00:54:41,
tror ikke dine andre kolonner vil være et problem, jeg skiftede
i midten af sidste år fra god gammeldags nestede tabeller i tabeller i tabeller
i frames i frames i frames over til div's og css samt xhtml.

- Det er ikke noget jeg har fortrudt :) ... men det kræver selvfølgelig lidt
tilvænning at man ikke skal tænk på colspan's og rowspans ... men, tabeller kan
en ting som div's ikke gør - nemlig at strække kollonner ud så de er lige lange ...

Jeg har selv læst om div's og css inde på w3.org og så en lille smule på w3schools.com
- css tables vs. div's minder en del om hinanden jo, og m.h.t. placering er det leg med float's relative eller absolute placeringer via top, left, right eller bottom defineringer ... ((( der er nogle links til forskellige sider her: http://www.eksperten.dk/spm/731048 )))



... M.h.t. tables vs. div's er tables ikke på vej ud (så vidt jeg ved), men der
er bare noget som tables ikke kan / og noget modsat som div's ikke kan så godt som tables ... Så, hvis det er at man føler sig hjemme i tables er der jo ikke noget til hindre for at køre videre i det. (jeg valgte kun at skifte sidste år da jeg skulle bygge en ny side fra bunden da jeg lige havde købt start på php 5)
Avatar billede mclemens Nybegynder
24. september 2006 - 10:44 #20
Edit: men, tabeller kan en ting som div's ikke gør - nemlig at strække kollonner ud så de er lige lange ... (tables kan flere ting end den ene, men det er nemmere at overveje struktur opsætningen af siden og så prøve at lave "tetris-klodserne / blokkene" via. tabeller og evt. div's og så se på hvilken løsning man føler bedst for og ikke mindst hvor man hører bedst hjemme) (har leget med tables i de gode px pushing dage '99-'01 og så '05 - medio '05 ... men har dog først sidste år sat mig ind i standarder)
Avatar billede steen_hansen Forsker
24. september 2006 - 11:31 #21
Allerførst tak for hjælpen, du har rigeligt fortjent de point :o)

Jeg kan se det kræver en del læsning, men lige her og nu fortsætter jeg ovre i http://www.eksperten.dk/spm/734285. Håber du har mod på lige at guide mig igennem :o)
Avatar billede mclemens Nybegynder
24. september 2006 - 11:37 #22
Velbekom, og tak for point :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester