Центриране на текст в див

Като го сложиш в друг див, и центрираш спрям родителския!Или не искаш да ползваш DIV в DIV
а и виж това тук
 
MontefuckeR каза:
emagi каза:
Като го сложиш в друг див, и центрираш спрям родителския!Или не искаш да ползваш DIV в DIV
а и виж това тук
в един див искам да е..

Не става само с един.А пък ако искаш и да работи и в ИЕ и модзила и т.н. , ще ти трябват повечко
 
Я пробвай така:
Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>

</head>

<body>
 <div style="display: table; height: 300px; width: 300px; background: #aaa; _position: relative; overflow: hidden;">
<div style=" _position: absolute; _top: 50%; display: table-cell; vertical-align: middle;">
<p style=" _position: relative; _top: -50%">Това е само проба, за да се види как може да се центрира вертикално текст в див</p>
</div>
</div>
</body>
</html>
Ма пак е 2-де!незнам, аз пасувам за 1 див :)
 
emagi каза:
Я пробвай така:
Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>

</head>

<body>
 <div style="display: table; height: 300px; width: 300px; background: #aaa; _position: relative; overflow: hidden;">
<div style=" _position: absolute; _top: 50%; display: table-cell; vertical-align: middle;">
<p style=" _position: relative; _top: -50%">Това е само проба, за да се види как може да се центрира вертикално текст в див</p>
</div>
</div>
</body>
</html>
Ма пак е 2-де!незнам, аз пасувам за 1 див :)
Лол... явно ще търся в нета
 
MontefuckeR каза:
emagi каза:
Я пробвай така:
Код:
 <div style="display: table; height: 300px; width: 300px; background: #aaa; _position: relative; overflow: hidden;">
<div style=" _position: absolute; _top: 50%; display: table-cell; vertical-align: middle;">
<p style=" _position: relative; _top: -50%">[color=red]Това е само проба, за да се види как може да се центрира вертикално текст в див[/color]
</div>
</div>
[/quote] 
Лол... явно ще търся в нета[/quote] 
Хмммм......
Аз не виждам какво толкова те притеснява един DIV вповече!Както се изрази, все едно съм дал 2000 реда на C++ :) 
Да ти кажа от личен опит не съм срещал начин да се направи това,което ти искаш, само с един див.Все пак твое право е да се увериш сам.Ако ли пък намериш, сподели с нас "неграмотните" :?:
 
html:

<div class="no_image">
<div class="v_center">
<div class="center_ie">
<a href="prod.php?id={$prod.id}" >
<img src="{$prod.thumb|default:'_img/pic_none.gif'}" alt="" />
</a>
</div>
</div>
</div>


CSS:

.no_image { width:65px; height:65px;
text-align:center; float:left;
display:table; vertical-align:middle; }
.v_center { display:table-cell; vertical-align:middle;}

za IE6
* html .no_image { position:relative; overflow:hidden; }
* html .v_center { position:absolute; top:50%; left:50%; }
* html .center_ie { position:relative; top:-50%; left:-50%; }


za IE7
.no_image { position:relative; overflow:hidden; }
.v_center { position:absolute; top:50%; left:50%; }
.center_ie { position:relative; top:-50%; left:-50%; }


Ако искаш да работи навсякаде правиш 2 цсс-а
- в единия двата кода без този за ие7 (това с * е хак само за ие6, слагасе в цсс главния , но се чете само от ие6)

- за ие7 правиш това:


в хтмл-то , тоест това от тоая файл ще се чете само от ие7 и там слага6 цсс кода за ие7
 
Код:
<div id="mainDiv" style="background: red; height: 500px;">
       <div id="contentDiv" style='text-align: center; position: relative;'>sdfsfdsf</div>
 </div>
 <script type="text/javascript">
 document.getElementById('contentDiv').style.top = ((parseInt(document.getElementById('mainDiv').style.height)-document.getElementById('contentDiv').offsetHeight)/2) +'px';
 </script>
Най-добрия вариант и работи навсякаде
 
I_V_O каза:
Код:
<div id="mainDiv" style="background: red; height: 500px;">
       <div id="contentDiv" style='text-align: center; position: relative;'>sdfsfdsf</div>
 </div>
 <script type="text/javascript">
 document.getElementById('contentDiv').style.top = ((parseInt(document.getElementById('mainDiv').style.height)-document.getElementById('contentDiv').offsetHeight)/2) +'px';
 </script>
Най-добрия вариант и работи навсякаде
На дали е най-добрия вариант!Първо се иска само един див, и колкото по-елементарно по-добре!А на дали JAvaScript e по-улекотено от CSS?!
 

Back
Горе