eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.wwwJak pobrać szerokość elementu?
Ilość wypowiedzi w tym wątku: 6

  • 1. Data: 2013-05-07 09:20:46
    Temat: Jak pobrać szerokość elementu?
    Od: Marek <p...@s...com>

    Witam,

    Mamy strukturę:

    <div style="width:700px; height:100px; position:relative overflow:hidden">
    <div style="position:absolute; top:0; left:0;" id="slider">
    ... tu kod HTML
    </div>
    </div>

    Jak wyznaczyć szerokość elementu slider?
    document.getElementById("slider").offsetWidth zwraca 700px, co jest
    bzdurą. Element slider jest znacznie szerszy.

    --
    Pozdrawiam
    Marek


  • 2. Data: 2013-05-07 22:47:24
    Temat: Re: Jak pobrać szerokość elementu?
    Od: Wojtek Gapiński <w...@w...I.TO.TEZ.pl>

    Dnia 07-05-2013 09:20 Marek napisał:
    > Witam,
    >
    > Mamy strukturę:
    >
    > <div style="width:700px; height:100px; position:relative overflow:hidden">
    > <div style="position:absolute; top:0; left:0;" id="slider">
    > ... tu kod HTML
    > </div>
    > </div>
    >
    > Jak wyznaczyć szerokość elementu slider?
    > document.getElementById("slider").offsetWidth zwraca 700px, co jest
    > bzdurą. Element slider jest znacznie szerszy.
    >

    Jeśli nigdzie nie ustawiasz innej szerokości dla #slider, to wcale nie
    jest to bzdurą - div zdaje się przejmuje szerokość rodzica.

    --
    Wojtek Gapiński
    http://jwmprojekt.pl


  • 3. Data: 2013-05-07 23:13:51
    Temat: Re: Jak pobrać szerokość elementu?
    Od: Marek <p...@s...com>

    W dniu 2013-05-07 22:47, Wojtek Gapiński pisze:

    > Jeśli nigdzie nie ustawiasz innej szerokości dla #slider, to wcale nie
    > jest to bzdurą - div zdaje się przejmuje szerokość rodzica.

    No dobrze, ale gdy wyłączę overflow:hidden, to ewidentnie widać, że
    szerokość obiektu jest znacznie szarsza niż rodzic a mimo to zwracana
    szerokość jest taka jak rodzica.

    --
    Pozdrawiam
    Marek


  • 4. Data: 2013-05-08 07:38:33
    Temat: Re: Jak pobrać szerokość elementu?
    Od: Wojtek Gapiński <w...@w...I.TO.TEZ.pl>

    Dnia 07-05-2013 23:13 Marek napisał:
    >
    > No dobrze, ale gdy wyłączę overflow:hidden, to ewidentnie widać, że
    > szerokość obiektu jest znacznie szarsza niż rodzic a mimo to zwracana
    > szerokość jest taka jak rodzica.
    >

    IMHO JS zwraca Ci taką szerokość #slider, jaka wynika ze stylów. A to,
    że zawartość się nie mieści i przez to ten <div> jest szerszy, to już
    inna sprawa.
    Może spróbuj ustawić dla #slider szerokość na auto.

    --
    Wojtek Gapiński
    http://jwmprojekt.pl


  • 5. Data: 2013-05-08 19:55:27
    Temat: Re: Jak pobrać szerokość elementu?
    Od: Marek <p...@s...com>

    W dniu 2013-05-08 07:38, Wojtek Gapiński pisze:

    > IMHO JS zwraca Ci taką szerokość #slider, jaka wynika ze stylów. A to,
    > że zawartość się nie mieści i przez to ten <div> jest szerszy, to już
    > inna sprawa.
    > Może spróbuj ustawić dla #slider szerokość na auto.
    >

    Chyba znalazłem rozwiązanie. Wystarczy odczytać scrollWidth. :-D Ta
    właściwość zawiera całą szerokość elementu jak na potrzeby scrollowania.
    Uffff.

    --
    Pozdrawiam
    Marek


  • 6. Data: 2013-05-09 16:39:19
    Temat: Re: Jak pobrać szerokość elementu?
    Od: Paweł Piskorz <n...@p...nie.invalid>

    W dniu 2013-05-07 22:47, Wojtek Gapiński pisze:
    > Dnia 07-05-2013 09:20 Marek napisał:
    >> Witam,
    >>
    >> Mamy strukturę:
    >>
    >> <div style="width:700px; height:100px; position:relative overflow:hidden">
    >> <div style="position:absolute; top:0; left:0;" id="slider">
    >> ... tu kod HTML
    >> </div>
    >> </div>
    >>
    >> Jak wyznaczyć szerokość elementu slider?
    >> document.getElementById("slider").offsetWidth zwraca 700px, co jest
    >> bzdurą. Element slider jest znacznie szerszy.
    >>
    >
    > Jeśli nigdzie nie ustawiasz innej szerokości dla #slider, to wcale nie
    > jest to bzdurą - div zdaje się przejmuje szerokość rodzica.

    Zauważ że #slider ma position:absolute; - w takim przypadku jego
    szerokość jest dopasowywana do zawartości, a nie do rodzica.


    --
    message[autor="PablO"]::after {
    content:"Pozdrawiam";
    }

strony : [ 1 ]


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: