Jag har tidigare använt mig av nedan för att visa en text över en bild. Men testar nu i firefox och då hamnar texten under bilden. Hur kan man göra så att det blir lika i båda?
Både IE och FF läser in stil deklarationen och sätter först elementet till position:relative och top:-15px.
Men eftersom inte IE begriper html>body biten så kan man ändra de redan deklarerade värdena speciellt för FF.
Så för FF ser det tillslut ut som {position:relative; top:0px} och för IE förblir det {position:relative; top:-15px;}
Det verkar som IE tolkar positions värden lite konstigt.
Då jag I själva verket ville ha en position på 0px så var jag tvungen att se till att IE istället fick -15px.
Det hela förefaller märkligt för mig och jag kan ha missat något då jag inte är någon baddare på html och css direkt.
Men den fulhacken fungerade för mig så det är det enda förslag på lösning jag har.
Ok...jag testade lite med ett enkelt exempel, och det måste vara något konstigt med min kod då IE gav annat positionsvärde så glöm bort vad jag sade tidigare :)
Om jag bara provar att lägga lite text över en bild så ger det samma resultat i IE och FF.
Nu vet jag inte hur ditt upplägg ser ut och hur det kan komma sig attt texten kommer över bilden i IE, men detta var den kod jag använde för att testa, och den ser likadan ut i IE och FF:
Om jag lägger till en <br> (bold ovan) så fungerar det i bägge webläsarna. MEN då får jag en extra radbrytning mellan alla menyer och så kan jag inte ha det. suck...
position:relative anger en position som är relativ den koordinat där blocket självt hade hamnat i flödet om det inte varit positionerat alls...
Det är position:absolute som anger en position "relativt omgivande block", dvs omgivande blocks origo...
Att tänka på är också att man bör lägga på ett "position:relative" (!) utan att ange koordinater på det omgivande blocket som en (kokboksmetod för att ta sig förbi en del kända buggar i en större kommersiell webbläsare ;)
(dvs om tabellcellen är bred nog till att börja med )
Det är nog det här som blir problemet. Tabellcellen är inte nog bred för <img src="testbild.jpg">& n b s p ;<span style="position:absolute;left:18px;top:0"><b>Löpsedeln</b></span>
Det verkar som att IE och andra webläsare hanterar mellanslaget (automatisk radbrytning) annorlunda.
REDIGERAT NEDAN:
MIN kod ovan, enligt ditt förslag, fungerar bra i IE men inte i tex firefox.
Antar att det inte är möjligt att fixa detta. Synd bara för att det var ju jätteenkelt att lägga text ovanpå en tom knapp i IE.
Antar att det lättaste sättet är att lägga knappen som bakground i en tabell istället...
Tja - eller direkt i <font> (eftersom du nu redan använder den) så du slipper onödigt tabellbrus :P
mattiasnordin skrev:
Din kod ovan fungerar bra i IE men inte i tex firefox.
Ehm, nu får du ge dig - koden funkar i FF på WinXP om du lägger in den exakt som den är skriven i exemplet i en tabell (med en rad och en cell) som har den bredd du angett i dina förutsättningar (100%)!- jag hade min vana trogen naturligtvis testat koden jag lade upp innan jag öppnade truten, men eftersom du envisas med att inte ge oss alla detaljer över hur din kod egentligen ser ut (i detta fall har jag t.ex. fått anta att du kör i "Quirks mode" eftersom du dels har en massa tabeller, och dels nyligen frågat vad man har en <!DOCTYPE till) så kan det naturligtvis finnas andra faktorer (som t.ex. vilken <!DOCTYPE du använder - och hur koden runt den tabellen du ger som exempel ser ut) som gör att det "inte funkar" i den ena eller andra webbläsaren :bla
Vill du ha mer hjälp får du ge oss en länk till sidan - för det här *är* naturligtvis lösbart bara du inte tvingar oss att famla i blindo och sedan belönar oss genom att klaga på att det vi gissat oss fram till inte funkar och sedan direkt deklarera problemet olösbart... Särskilt som det faktum att det inte funkar för dig med största sannolikhet kommer sig av att vi tvingats göra ett eller annat antagande som sedan visat sig inte hålla pga att du tjuvhållit på någon skitdetalj som du inte tror har med saken att göra :bla
Jag menar inte att din kod inte fungerar som du har skrivit den. Jag menar att MIN kod inte fungerar pga bredden som på tabellen. Precis som du nämner ovan. Det är i alla fall min slutsats. Jag skulle dock bli överlycklig om det fanns något smidigt sätt att lösa det på...
Sidan ligger i en frame som är ca 170 pixlar bred. Denna version är inte den jag har labbat med. Denna fungerar som jag hade tänkt mig fast bara i IE.