webForumDet fria alternativet

textarea med width 100% stretchar ut div

HTML & CSS

9 svar · 295 visningar · startad av PepeJeria

Medlem sedan feb. 2003774 inlägg
Frågan#1

Kan någon förklara varför den andra div:en blir lite längre än 300px? Den innehåller en textarea med width:100%;

Får samma effekt i både IE och Mozillla, men inte Opera 7

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
	"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<style type="text/css">
div
{
	width:298px;
	border:1px solid green;
}

div textarea
{
	width:100%;
	height:50px;
}
</style>
</head>

<body>
300px:
<div></div>
Borde också vara 300px:
<div>
	<textarea rows="10" cols="10"></textarea>
</div>
</body>
</html>

Kan även beskådas här

Medlem sedan sep. 20021 655 inlägg
#2

Det beror på att textarean har en border.
Textareans bredd (exklusive kantlinjen) är 298px. Lägg sedan till den kantlinje som textarean har som standard, så blir textarean lite bredare (302px, gissar jag).

Medlem sedan feb. 2003774 inlägg
#3

men om jag lägger till border:none på textarean så stretchar den ändå till div:en

Medlem sedan apr. 200312 679 inlägg
#4

Det här funkar för mig:

	<textarea rows="10" cols="10" style="margin: 0px; border: 0px;"></textarea>

Edit: Du kan ju lätt skriva in det i din CSS där. :OO

Medlem sedan feb. 2003774 inlägg
#5

Att ta bort borden hjälpte, men det blir ändå 2px (bordern) för brett I IE. Margin till 0 gjorde ingen skilland.

Det intressanta är att om jag tar bort DOCTYPE:n så att Quirks mode triggas så fungerar det i IE, men jag vill självklart använda mig av Standards compliance mode.

Uppdaterade testcaset:
http://member.webforum.nu/5113/testcase.html

Medlem sedan apr. 200312 679 inlägg
#6

PepeJeria skrev:

Att ta bort borden hjälpte, men det blir ändå 2px (bordern) för brett I IE. Margin till 0 gjorde ingen skilland.

Det intressanta är att om jag tar bort DOCTYPE:n så att Quirks mode triggas så fungerar det i IE, men jag vill självklart använda mig av Standards compliance mode.

Uppdaterade testcaset:
http://member.webforum.nu/5113/testcase.html

Vad använder du för ie? Jag använder 6.0 och det ser bra ut i både det och i firefox.

Medlem sedan feb. 2003774 inlägg
#7

6.0.2800.1106

Ta en skärmdump och zomma in så ser du det tydligare.

Medlem sedan apr. 200312 679 inlägg
#8

Inte går det två pixlar utanför hos mig. :e
Eller? Haha, jag har jämfört "textarean" med kantlinjen, inte det strecket som går över. My bad!

border.jpg
Medlem sedan mars 20025 907 inlägg
#9

Sätt padding: 0px; i div textarea så ser det normalt ut

Medlem sedan feb. 2003774 inlägg
#10

Tack för hjälpen alla, padding:0; på textarean + border:none; fixade problemet.

Tänkte inte på det som detectgap sa, width:100%; räknar ju inte med bordern.

Ang, paddingen på textarean kan man ju tycka att det hade varit mer logiskt om det varit margin istället...

266 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
143 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)