ugrás a tartalomhoz

Vízszintes középre igazítás Explorerben

Medve · 2010. Szep. 5. (V), 09.57
Hello mindenki,
Készítettem egy weboldalt aminek a középre igazítását úgy oldottam meg hogy relatív pozicionáltam és a jobb és a bal margó is "auto"-ra állítottam. Ez az összes létező böngészőnél müködik kivéve explorerben(6,7,8 egyaránt).Gondolkoztam rajta hogy csinálnom kéne egy egy cellás táblázatot és azt igazítani középre majd beleírni az oldalt, de nincs ennél valami kevésbé "parasztos" megoldás rá?

Választ előre is köszi.
 
1

Szélesség

Poetro · 2010. Szep. 5. (V), 11.01
Ahhoz, hogy középre rendezd, adni kell neki szélességet is, és működni fog. Elvégre a Weblabor is középre van rendezve, nem?
2

Asszem nem beszélünk

Medve · 2010. Szep. 5. (V), 12.34
Asszem nem beszélünk egyről.
Van például egy div-em.

div#keret
{
position:relative;
margin-left:auto;
margin-right:auto;
width:500px;
height:500px;
background-color:red;
}
ez Explorer alatt nem megy középre hanem ott marad a jobb szélen.
Vagy nem a div széleségére gondoltál?
3

margin: 0 auto;

ironwill · 2010. Szep. 5. (V), 12.51
A megoldás: margin: 0 auto;

Ez így minden böngészőben működik. (top-ot és bottom-ot, meg utánna állítasz külön tulajdonságként)

(akkor van értelme középre igazítani, ha szélességet is állítasz a div-nek, mert alapértelmezetten teljes a horizontális kitöltése - szerk.: látom be van állítva)
4

hát ez még így sem az igazi

Medve · 2010. Szep. 5. (V), 19.37
azt mondjátok hogy margin: 0 auto; az jó.
Kipróbáltam és figyelembe se veszi az explorer
7-es explorerem van és a következő div-et raktam bele.

div#oldalkeret
{
position:relative;
margin: 0 auto;
width:850px;
height:1000px;
background-color:#999999;
}
Ha jól értem ezt mondtátok. Van szélessége, magassága mindene csak nem akar IE 7 -en középen ragadni. Lehet hogy én vagyok hülye hozzá,
de akkor sem megy. :S
5

Docktype

Blintux · 2010. Szep. 5. (V), 20.15
En arra gondolod, hogy a Docktype nincs megfeleloen megadva nalad.
Probald meg igy, nekem mukodik IE6-9 -ekben.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style>
div#oldalkeret {  
position:relative;  
margin: 0 auto;  
width:850px;  
height:1000px;  
background-color:#999999;  
}
</style>
</head>

<body>
<div id="oldalkeret">
Habla habla habla
</div>
</body>
</html>
12

illetve ha UTF-8 akkor BOM

Karvaly84 · 2012. Már. 1. (Cs), 10.17
illetve ha UTF-8 akkor BOM nélkül legyen mentve mert az első karakter számít!
6

Doctype

N0r3i · 2010. Szep. 5. (V), 20.27
Szia!

Az IE nagyon érzékeny arra, hogy milyen doctype van beállítva. Próbáld meg így kezdeni a html fájlodat:
<!DOCTYPE html>

Üdv:
Norbi

PS: hoppá, megelőztek :-) Viszont a position megadása felesleges...
7

IE -> text-align: center;

asam9 · 2010. Szep. 10. (P), 01.37
IE-nek: body {text-align: center;}
8

re:text-align center

csman007 · 2010. Szep. 10. (P), 20.53
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>

<head>
	<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<!-- 
Ez csak egy jótanács mivel sajnos az i7 i8 nem ugyanuyg kezeli a dolgokat,
ezért ezt ajánlatos a head részbe betenni, 
és igy forceolod az ie8at hogy i7es módban működjön, 
így ha van valami ie bug esetleg a későbbiek folyamán akkor csak ie6 ie7re kel fejlesztened.
-->
	<title>Oldalad címe</title>
    <style>
        body
        {
          margin:0;
        }
        #main
        {
           margin:0 auto;
           width: 960px;
        }
    </style>
</head>

<body>
    <div id="main">
        bla bla
    </div>
</body>
</html>
Ennyi lenne
9

Doctype

karamcsand · 2012. Feb. 29. (Sze), 20.43
Bár már rég lefutott ez a beszélgetés, a jövő fórumozóinak ideírom, hogy az Internet Explorer Doctype hiányában visszabutítja magát IE6-ra. Ennek következtében pedig előjön ezernyi probléma.
Szóval ha IE-barát honlapot akartok, akkor minden esetben a html első sora tartalmazza a doctype-ot! (Tehát mellőzni kell az egyébként azt hiszem, hogy szabványos XML prológot is)
10

Kiegészítés

Pepita · 2012. Feb. 29. (Sze), 21.37
Bár nem ehhez a témához kapcsolódik, de ne felejtsük ki azt sem, hogy BOM nélkül mentsünk és a doctype a legelső sorba kerüljön! Ha php kódunk van a doctype előtt, könnyű elkövetni ezt a hibát:
<?php
//Ez itt a program
?>
<!doctype...
Ez azért rossz, mert a ?> zárótag után még van egy sortörés, így a doctype elé bekerül az üres sor. Ugyanez helyesen:
<?php
//Ez itt a program
?><!doctype...
11

Ez azért rossz, mert a ?>

kuka · 2012. Már. 1. (Cs), 09.37
Ez azért rossz, mert a ?> zárótag után még van egy sortörés, így a doctype elé bekerül az üres sor.
Nálam soha sem történt ilyen, mert a PHP értelmező mindig ejti a záró PHP tag utáni sortörést. Persze csak ha közvetlenül mögötte áll.

Például ennek a kimenete „izé”, azaz 3 karakter, sortörés nincs:

i<?php
echo 'z';
?>
é
13

Hogyan?

Pepita · 2012. Már. 1. (Cs), 17.44
Ami példasort írtál, abban nincs is sortörés. :)
Mit ejtsen az iterpreter?

Én viszont pont ilyen helyen már kellett javítsak, pont az áttekinthetőség miatt írtam a php-t külön sorba. Kettőnk közt eltérést jelenthet, hogy én windows-os sortörést használok. (Tudom, ez felesleges/nem ajánlott, de a heppem.)
14

Ami példasort írtál, abban

kuka · 2012. Már. 1. (Cs), 18.11
Ami példasort írtál, abban nincs is sortörés. :)
Pontosabban ugyanannyi van mint abban mit te írtál Kiegészítés tárggyal.
Mit ejtsen az iterpreter?
A literál sortörést a záró PHP tag után, amely az egyetlen különbséget képezi az általad rossznak illetve jónak minősített példáid között.
Kettőnk közt eltérést jelenthet, hogy én windows-os sortörést használok.
Linuxos PHP értelmező a Windowsos sortörést is ugyanúgy ejti.

Ha ragaszkodsz a saját példádhoz, hát lássuk azt, méghozzá Windowsos sortörésekkel:
bash-4.2$ cat tores.php 
<?php
//Ez itt a program
?>
<!doctype...

bash-4.2$ od -xa tores.php 
0000000    3f3c    6870    0d70    2f0a    452f    207a    7469    2074
          <   ?   p   h   p  cr  nl   /   /   E   z  sp   i   t   t  sp
0000020    2061    7270    676f    6172    0d6d    3f0a    0d3e    3c0a
          a  sp   p   r   o   g   r   a   m  cr  nl   ?   >  cr  nl   <
0000040    6421    636f    7974    6570    2e2e    0d2e    000a
          !   d   o   c   t   y   p   e   .   .   .  cr  nl
0000055

bash-4.2$ php tores.php 
<!doctype...

bash-4.2$ php tores.php | od -xa
0000000    213c    6f64    7463    7079    2e65    2e2e    0a0d
          <   !   d   o   c   t   y   p   e   .   .   .  cr  nl
0000016
Remélem a kimenet így már világosan mutassa, hogy a példád ami rossznak neveztél, tulajdonképpen jó.
15

Be kell vallanom,

Pepita · 2012. Már. 1. (Cs), 18.44
"magamon" még nem vettem észre "kezdő" üres sort. Viszont épp mostanában láttam csomó olyan oldalt (HTML forrást ugye), amiben viszont van (persze dinamikus oldalak), és én gondolkodás nélkül tértem a 2. verzióra. (Bár MVC-n nemigen fordul elő fájlon belül ilyen.) Most kipróbáltam, neked van igazad, még egy soremelés kell a hibához, stb. De tényleg sok forrást láttam ilyet, és tudtommal invalid.

Szóval, fentebbi példáimhoz mindenki adjon méd a "?>" után egy-egy #13-at! (Nem szerkesztem, látszon, hogy igazad volt.)