webForumDet fria alternativet

problem med "em"

15 svar · 394 visningar · startad av Qonos

QonosMedlem sedan sep. 2000438 inlägg
#1

Hur kommer det sig att width:55em; i t.ex. #footer inte täcker ut hela bredden i Firefox när jag satt att hela sidan ska vara 55em bred.. hmm i IE blir den däremot större men jag gissar att jag måste sätta mig när och räkna på hur stor plats margin och border tar för det ska fixa sig i IE, men det bör (läsas ska) ju fungera i Firefox med.


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
	<title></title>
</head>
<style>
body, html {
	background : #000000;
	margin: 0;
	height: 100%;
	width: 100%;
	text-align:center;
}

#main {
	background : #FFFFFF;
	width:55em;
	border-right : 0.2em solid Black;
	border-left : 0.2em solid Black;
	border-top : 0.2em solid Black;
	border-bottom : 0.2em solid Black;

	text-align:left;
	margin-left:auto; 
	margin-right:auto;
}

#logo {
	width:55em;
	height:10em;
	border-bottom:0.2em solid black;
}

.content {
	margin:0.5em;
	font-family : Arial, Helvetica, sans-serif;
	font-size : smaller;
	width:55em;
	vertical-align:top;
}
#menu {
	margin-top:0.5em;
	margin-right:0.5em;
	margin-bottom:1em;
	margin-left:0.5em;
	font-family : Arial, Helvetica, sans-serif;
	font-size : normal;
	font-weight : bold;
	letter-spacing : 0.1em;
}

#content-left {
	width:19.2em;
}
#content-middle {
	width:21em;
	padding-left:0.5em;
	padding-right:0.5em;
}
#content-right {
	width:13.8em;
}
#content-table {
	width:54em;
	border:0;
	margin:0;
	padding:0;
}
#footer {
	border-top: 0.1em dotted black;
	margin:0.5em;
	font-family : Arial, Helvetica, sans-serif;
	font-size : smaller;
	width:55em;
	vertical-align:top;
}
#content {
	border-top: 0.1em dotted #000000;
	font-family : Arial, Helvetica, sans-serif;
	font-size : smaller;
	width:55em;
	vertical-align:top;
}
</style>
<body>

<div id="main">

	<div id="menu">Lorem ipsum</div>
	
	<div id="content">
		<table id="content-table">
			<tr>
				<td class="content" id="content-left">
					Lorem ipsum
				</td>
				<td class="content" id="content-middle">
					<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis tempus magna eu lectus. Etiam rhoncus. Aenean hendrerit pharetra quam. Maecenas venenatis, elit in interdum vulputate, justo nisl congue velit, dignissim consectetuer lorem nulla a mauris. Nunc lobortis augue eget felis. Vivamus rutrum. Proin nunc dolor, interdum ac, mattis et, venenatis sit amet, orci. Curabitur laoreet. Nullam pulvinar elementum pede. Etiam tempus luctus arcu. Sed sit amet tortor quis sapien tristique dapibus. Cras accumsan hendrerit elit. Donec in mi eget erat lobortis feugiat.</p>
					<p>Aliquam consequat erat et enim. Vestibulum sollicitudin. In id tellus. Morbi ligula eros, faucibus sed, pharetra vel, iaculis sed, felis. Nulla lacus. In lacinia. Donec tincidunt sapien at quam. Maecenas placerat eros et lectus. Nulla ipsum. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Sed in pede. Aliquam nec nulla.</p>
					<p>Fusce molestie quam vel urna. Donec non ipsum. Phasellus dictum rutrum purus. Mauris mauris. Donec ac sapien. Etiam elit. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Sed rhoncus gravida metus. In id turpis a nunc scelerisque posuere. Nullam ac velit vel est pharetra tincidunt. Duis ut urna ac dolor vulputate euismod. Nam porta. Vestibulum egestas. Aliquam non ante a sem aliquam dignissim. Vestibulum tristique rutrum sapien. Sed mauris sem, dictum vitae, adipiscing at, lobortis eu, eros. Duis tincidunt sem quis neque. Nam id nunc pulvinar est condimentum pharetra. Etiam posuere, leo ut blandit ullamcorper, tellus nunc sollicitudin metus, non iaculis dolor lorem id massa. Vestibulum vehicula varius ligula.</p>
					<p>Morbi fermentum neque at turpis. Pellentesque libero risus, condimentum quis, vulputate quis, rutrum condimentum, libero. Nullam placerat libero at quam. Sed adipiscing. Integer sed dui. Quisque rhoncus vestibulum libero. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Integer elit lorem, tincidunt eu, lobortis at, eleifend rhoncus, odio. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Donec sapien. Curabitur lectus. Etiam vel tortor fringilla mauris pretium feugiat. Cras posuere, enim at tempus porta, augue nunc iaculis nulla, ut pellentesque arcu tortor ut lacus. Fusce pretium. Proin arcu justo, condimentum ac, pretium vitae, tristique eget, libero. Suspendisse auctor tristique urna. Nunc vitae dui. Sed a quam. Nam scelerisque eros id pede. Integer porta sagittis enim.</p>
					<p>Cras massa nibh, accumsan nec, fermentum ac, lobortis ut, nibh. Proin ut velit nec velit pretium tincidunt. Nulla mi. Etiam commodo urna quis mi. Morbi facilisis turpis id erat. Etiam ullamcorper, nulla consectetuer aliquet convallis, velit augue vestibulum nulla, nec malesuada nibh dui in orci. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Aliquam vitae nunc id urna sollicitudin viverra. Curabitur convallis odio ut dui. Integer ante. Integer urna. Integer ac metus id metus rutrum dignissim. Sed tempus consequat lacus. Suspendisse potenti. Nulla urna. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras sit amet mauris. Duis euismod.</p>
				</td>
				<td class="content" id="content-right">
					Lorem ipsum
				</td>				
			</tr>
		</table>
	</div>
	
	<div id="footer">
		<table id="content-table">
			<tr>
				<td class="content" id="content-left">
					Lorem ipsum
				</td>
				<td class="content" id="content-middle">
					Lorem ipsum
				</td>
				<td class="content" id="content-right">
					Lorem ipsum
				</td>				
			</tr>
		</table>
	</div> 
	
</div>

</body>
</html>
nitro2k01Medlem sedan aug. 20039 342 inlägg
#2

Varför använder du inte pixlar som enhet?

QonosMedlem sedan sep. 2000438 inlägg
#3

jag tänkte tänka på synskadade. men visst allt hade varit sjukt mycket enklare om jag användt fasta pixlar, men då fungerar det inte lika bra med "ändra textstorlek" i webläsarna. nu "zoomas" hela sidan och bibehåller proputionerna. det är snyggt.. bara jag får till det rätt och riktigt så kommer det att bli bra :)

nitro2k01Medlem sedan aug. 20039 342 inlägg
#4

Det problemet finns inte i Opera. Där zoomas hela sidan oavsett vad det står i CSS.

QonosMedlem sedan sep. 2000438 inlägg
#5

jaha? men inte i IE och firefox vilket flertalet besökare använder. alltså får man ju koda så det fungerar för alla. inte bara några, eller? :)

nitro2k01Medlem sedan aug. 20039 342 inlägg
#6

Om man är synskadad så är Opera egentligen en bättre läsare. Men man kan ju heller inte tvinga någon till att använda ett speciellt program.

MeleaMedlem sedan juli 20033 147 inlägg
#7

Använd procentiuell storlek på texten isåfall. :)

QonosMedlem sedan sep. 2000438 inlägg
#8

jo det hade varit en lösning. men bilder etc blir det ju inte bra med procent, där blir det bättre med em (enligt mig och mina tester).

nitro2k01Medlem sedan aug. 20039 342 inlägg
#9

Re: problem med "em"

Qonos skrev:

när jag satt att hela sidan ska vara 55em bred..

Hur gör du detta?

QonosMedlem sedan sep. 2000438 inlägg
#10

#main {
background : #FFFFFF;
width:55em;
border-right : 0.2em solid Black;
border-left : 0.2em solid Black;
border-top : 0.2em solid Black;
border-bottom : 0.2em solid Black;

text-align:left;
margin-left:auto; 
margin-right:auto;

}

jag kopiera in min kod i första inlägget.. där får dulite mer klarhet i hur jag gjort

nitro2k01Medlem sedan aug. 20039 342 inlägg
#11

Ok, fattade inte att du hade bestämd width på sidan innan jag kollade på den. Jag trodde att du definierade att hela body skulle motsvara 55em no matter what.
Jag löste ditt problem genom att sätta width: 98%; på #footer och #content. Den ärver då width från parent-diven (main i detta fall.)
Så tycker jag att du kan kolla på denna fil. Det är ett smart sätt att kolla hur breda olika objekt egentligen är genom att sätta en border runt dem. Användbart!

QonosMedlem sedan sep. 2000438 inlägg
#12

naturligtvis har jag testat med border.. :)

OK att jag kan sätta värdet i procent, det verkar ju fungera.

men frågan återstår fortfarande.. varför är inte 55em lika stort på olika ställen i koden.

nitro2k01Medlem sedan aug. 20039 342 inlägg
#13

W3Cs specifikationer skrev:

The 'em' unit is equal to the computed value of the 'font-size' property of the element on which it is used. The exception is when 'em' occurs in the value of the 'font-size' property itself, in which case it refers to the font size of the parent element.

Alltså så är 1 em olika stor beroende på vilken font-size du sätter på div'en. Att sätta samma font-size på alla element bör hjälpa. Eller att använda procent-värden där det behövs.

QonosMedlem sedan sep. 2000438 inlägg
#14

jag använder

font-size : smaller;
font-size : normal;

kan det bero på detta kanske.. ska undersöka det hela.

tack

nitro2k01Medlem sedan aug. 20039 342 inlägg
#15

Ja

font-size : smaller;
font-size : normal;

eller

font-size : 10px;
font-size : 16px;

Spelar ingen roll. Ju större font-size desto större blir en stycken av enheten em.

QonosMedlem sedan sep. 2000438 inlägg
#16

tack! kanske skall återgå till att göra sidor med enheten px :) hehe det är ju lätt mycket enklare :)

tack!

135 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)