Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [CSS] padding property, Błedna irterpretacja przeglądarek ?
Black-Berry
post 24.06.2007, 12:13:46
Post #1





Grupa: Zarejestrowani
Postów: 663
Pomógł: 6
Dołączył: 3.06.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


mam element typu div takiej wielkosci:
Kod
|--------|
|  text  |
|--------|

jesli teraz zastosuje na nim styl CSS postaci
Kod
div{
    position:absolute;
    padding-right: 50px;
}

to w firefoksie zamiast zwiekszac odstep pomiedzy prawym brzegiem diva a tekstem przy zachowaniu jego szerokosci, div ten zwieksza sie o 50px; po prawej. W IE jest poprawnie. Mozna cos z tym zrobic?

Ten post edytował Black-Berry 24.06.2007, 12:14:58


--------------------
Go to the top of the page
+Quote Post
abc667
post 24.06.2007, 12:26:57
Post #2





Grupa: Zarejestrowani
Postów: 229
Pomógł: 0
Dołączył: 29.05.2007

Ostrzeżenie: (0%)
-----


a mógłbyś zobrazować o które odległości ci chodzi? imo jeśli dodaje się padding to div musi się zwiększyć żeby ten padding zachować
Go to the top of the page
+Quote Post
Black-Berry
post 24.06.2007, 12:29:29
Post #3





Grupa: Zarejestrowani
Postów: 663
Pomógł: 6
Dołączył: 3.06.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Cytat
(..) jeśli dodaje się padding to div musi się zwiększyć żeby ten padding zachować
Tak, ale problem w tym ze w ff wielkosc diva sie zwieksza, a w IE zostaje taka sama (w ie tekst wewnatrz sie zwęża).

Ten post edytował Black-Berry 24.06.2007, 12:32:30


--------------------
Go to the top of the page
+Quote Post
mike
post 24.06.2007, 12:37:43
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Cytat(Black-Berry @ 24.06.2007, 13:13:46 ) *
to w firefoksie zamiast zwiekszac odstep pomiedzy prawym brzegiem diva a tekstem przy zachowaniu jego szerokosci, div ten zwieksza sie o 50px; po prawej. W IE jest poprawnie. Mozna cos z tym zrobic?
Można wywalić IE tongue.gif
Bo widzisz tak się składa że to IE postępuje wbrew standardowi XHTML i wbrew temu co ustaliło konsorcjum W3C.

Wielkość elementu to width (bądź height) + padding natomiast dla IE wielkośc elementu to tylko width (bądź height).

Jeśli chcesz mieć uniwersalnie polecam komentarze warunkowe: Conditional comments.

  1. <style type="text/css">
  2. div {
  3. position:absolute;
  4. width: 100px;
  5. padding-right: 50px;
  6. }
  7.  
  8. <!--[if lte IE 6]>
  9. <style type="text/css">
  10. div {
  11. width: 200px;
  12. }
  13. </style>
  14. <![endif]-->


I teraz pod badzIEwIEm i pod innymi przeglądarkami <div> zajmuje 200px wzdłuż.
Go to the top of the page
+Quote Post
JaRoPHP
post 24.06.2007, 12:40:55
Post #5





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Firefox interpretuje to w sposób właściwy (zgodnie z założeniami CSS) smile.gif:
Aby obliczyć całkowitą szerokość ramki, należy zsumować wielkości obszarów zawartości, dopełnienia i krawędzi. Np. szerokość diva wynosi 200px, krawędź ma szerokość 2px a dopełnienie wynosi 5px, to całkowita szerokość wynosi 214px.
IE (nie wiem jak z wersją 7) łamie ów model ramkowy - całkowita szerokość ramki dla tej przeglądarki jest zdefiniowana poprzez szerokość elementu, a obszar zawartości będzie się zmniejszał.

// małe spóźnienie smile.gif

Ten post edytował JaRoPHP 24.06.2007, 12:41:33


--------------------
Kto pyta, nie błądzi...
Kto zbłądził, ten pyta...
Go to the top of the page
+Quote Post
abc667
post 24.06.2007, 12:41:29
Post #6





Grupa: Zarejestrowani
Postów: 229
Pomógł: 0
Dołączył: 29.05.2007

Ostrzeżenie: (0%)
-----


padding-right :-p
bedzie 150
Go to the top of the page
+Quote Post
Black-Berry
post 24.06.2007, 12:45:43
Post #7





Grupa: Zarejestrowani
Postów: 663
Pomógł: 6
Dołączył: 3.06.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Wydaje mi się jednak ze tym razem IE ma troche racji. Ustalam szerokosc na 200px; i mam pewność, że blok będzie miał 200px a nie muszę latać z kalkulatorem żeby mi się stronka nie rozjechała... trochę kiepsko że tak jest tak jak jest... ale chyba będę się musiał z tym pogodzić.

[edit]
najgorsze że nie ma jednego standardu w tej kwestii.

Ten post edytował Black-Berry 24.06.2007, 12:47:06


--------------------
Go to the top of the page
+Quote Post
revyag
post 25.06.2007, 11:07:30
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Nie ma racji, bo do zwiększania odstępów między elementami służy margin, a nie padding.


--------------------
-------------

------
Go to the top of the page
+Quote Post
Black-Berry
post 25.06.2007, 11:19:52
Post #9





Grupa: Zarejestrowani
Postów: 663
Pomógł: 6
Dołączył: 3.06.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Cytat(revyag @ 25.06.2007, 11:07:30 ) *
Nie ma racji, bo do zwiększania odstępów między elementami służy margin, a nie padding.
No więc skoro padding ma działać na wewnętrznych odstępach to czemu ingeruje w szerokość diva. Nie było by lepiej jesli "width" zapewnialo nas o stałej szerokosci diva ?

Ten post edytował Black-Berry 25.06.2007, 11:20:01


--------------------
Go to the top of the page
+Quote Post
mike
post 25.06.2007, 11:35:36
Post #10





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Cytat(Black-Berry @ 25.06.2007, 12:19:52 ) *
Nie było by lepiej jesli "width" zapewnialo nas o stałej szerokosci diva ?
Nie lepiej.
width odnosi się do zawartości, padding wewnętrzny margines i dopiero to tworzy razem długość elementu (pomijam tutaj border) i kropka tongue.gif
Go to the top of the page
+Quote Post
abc667
post 25.06.2007, 11:36:30
Post #11





Grupa: Zarejestrowani
Postów: 229
Pomógł: 0
Dołączył: 29.05.2007

Ostrzeżenie: (0%)
-----


Black-Berry
i co? treść miałaby być skracana?
poza tym pomyśl o zagnieżdżeniu divów, rodzic ma szerokość 200px i padding 10px, dziecko ma szerokość 190px to co teraz zrobić? z które strony uciąć diva? która ważniejsza? bo chyba nie z obu znowu ucinać?

Ten post edytował abc667 25.06.2007, 11:37:17
Go to the top of the page
+Quote Post
Black-Berry
post 27.06.2007, 11:55:54
Post #12





Grupa: Zarejestrowani
Postów: 663
Pomógł: 6
Dołączył: 3.06.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Cytat(abc667 @ 25.06.2007, 12:36:30 ) *
Black-Berry
i co? treść miałaby być skracana?
poza tym pomyśl o zagnieżdżeniu divów, rodzic ma szerokość 200px i padding 10px, dziecko ma szerokość 190px to co teraz zrobić? z które strony uciąć diva? która ważniejsza? bo chyba nie z obu znowu ucinać?
A co jak dziecko ma 220px ?smile.gif Nawet jak w obu przypadkach padding =0 to nam nie pomoze.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 14:01