Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
centrowanie tekstu (2 linie) w pionie
#1
Witam.
Potrzebuje wycentrować w pionie elementy span. Problem polega na tym, że niektóre z tekstów są w dwóch liniach. Gdyby były jedno-wierszowe sprawa była by prosta, wystarczyłoby zastosować line-height. Zależy mi na tym aby wszystkie teksty w div text_wrapper znajdowały się na środku w pionie, niezależnie od ilości wierszy. Proszę o pomoc. Męczę się z tym już kilka godzin. Skończyły mi się pomysły.


Kod:
<div id="img_title">
    <div class="text_wrapper">
        <span class="text active">Ekspertyzy budowlane</span>
        <span class="text">Opinie sądowe<br />i przedsądowe</span>
        <span class="text">Konsultacje budowlane</span>
        <span class="text">Interpretacje Ustawy<br /> Prawo Budowlane</span>
        <span class="text">Ekspertyzy budowlane<br />&amp; Management</span>
    </div>
</div>
<style>
#img_title { position: absolute; top: 0; left: 0; height: 181px; width: 494px; display: table; background: url(../images/img_titlel_bg.png) top left no-repeat; z-index: 18;}
#img_title .text_wrapper { position: relative; vertical-align: middle; display: table-cell; border: 1px solid #333; z-index: 19; text-align: center;}
#img_title .text_wrapper .text {  position: absolute; left: 1px; font-size: 24px; height: 54px; color: #808080; background-color: #fff; width: 492px;  z-index: 20; opacity: 0.0;}
#img_title .text_wrapper .text.active { z-index: 22; opacity: 1.0;}
#img_title .text_wrapper .text.last-active { z-index: 21;}
</style>
Kod PHP:
<script>
function 
slideSwitchText() {
   var 
$active = $('.text_wrapper span.active');

    if ( 
$active.length == $active = $('.text_wrapper span:last');

    var 
$next =  $active.next().length $active.next()
        : $(
'.text_wrapper span:first');

    
$active.addClass('last-active');

    
$next.css({opacity0.0})
        .
addClass('active')
        .
animate({opacity1.0}, 1000, function() {
            
$active.removeClass('active last-active');
        });

}

$(function() {
    
setInterval"slideSwitchText()"2000 );
});
</
script
Odpowiedz
#2
Vertical align działa inaczej niż w komórkach. W komórkach po prostu centruje w pionie. W przypadku innych bloków centruje elementy WZGLĘDEM siebie.
Dajesz więc vertical-align, display:inline-block
Jeżeli będziesz chciał wycentrować względem nadrzędnego elementu, musisz dodać jeden span, który ma height:100%; width:0px; display:inline-block Smile
Odpowiedz
#3
Dzięki za odpowiedź. Udało mi się naprawić wyświetlanie w następując sposób:
dodałem dodatkowy span wewnątrz span.text. Następnie span.text { display: table} i span { display: table-cell, vertical-align: middle;}
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Podmiana tekstu dynamicznego Nikodemsky 4 5,229 01-05-2017, 17:37
Ostatni post: markgeet
  Zmiana tekstu w obrazek iseebadpixels 1 2,581 13-11-2012, 21:55
Ostatni post: camelrafal
  Zjeżdzanie Tekstu. TastemanPL 2 2,441 08-06-2012, 17:37
Ostatni post: kornell
  wyśrodkowanie obrazka w pionie... kuba 6 7,053 08-05-2012, 15:41
Ostatni post: n0xx
  centrowanie div daniio 7 5,094 10-02-2012, 16:58
Ostatni post: Kartofelek

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Sponsorzy i przyjaciele
SeoHost.pl