Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Dwa elementy obok siebie.
webdice
post 17.04.2009, 09:11:02
Post #1


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Witam,

mam DIV'a o stałej szerokości (załóżmy 500px), w nim kolejne dwa z tym że o szerokości ustalanej w procentach. Do tego momentu wszystko jest w porządku, problem zaczyna się jak dodam obramowanie dla wewnętrznych elementów (układają się jeden pod drugim). Czy jest na to jakieś rozwiązanie.
Go to the top of the page
+Quote Post
korek_a
post 17.04.2009, 13:00:11
Post #2





Grupa: Zarejestrowani
Postów: 115
Pomógł: 9
Dołączył: 26.09.2008
Skąd: krzesło

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


tak jest ale bez kodu to tak krucho


ale zapewne nie maje miejsca i dlatego się zsuwają w dół , i czy te wartości procentowe tam muszę być ? bo warto nie mieszać % z px
ale spróbuj zmniejszyć % o wartość grubości ramki
Powód edycji: Błąd ortograficzny. /webdice
Go to the top of the page
+Quote Post
webdice
post 18.04.2009, 14:59:34
Post #3


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Cytat(korek_a @ 17.04.2009, 14:00:11 ) *
(...) ale zapewne nie maje miejsca i dlatego się zsuwają w dół (...)


To jest oczywiste, chodzi o 4px (grubość obramowania).

Cytat(korek_a @ 17.04.2009, 14:00:11 ) *
(...) i czy te wartości procentowe tam muszę być? (...)


Szerokość elementu nadrzędnego będzie ustalana przez użytkownika. Poza tym jakby szerokość była ustalana w pikselach, nie było by problemu.

Cytat(korek_a @ 17.04.2009, 14:00:11 ) *
spróbuj zmniejszyć % o wartość grubości ramki


Twoim zdaniem jeden lub dwa piksele to ile procent?

Problem rozwiązałem korzystając z marginesów ujemnych, sprawa zasadniczo dość prosta, ale mnie nie satysfakcjonuje. Jeśli ktoś zna bardziej eleganckie rozwiązanie to chętnie wysłucham.
Go to the top of the page
+Quote Post
pawkow
post 22.04.2009, 20:51:41
Post #4





Grupa: Zarejestrowani
Postów: 76
Pomógł: 7
Dołączył: 30.09.2006

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


Warto wiedzieć, że procenty można podawać nie tylko jako liczby całkowite, ale także jako liczby rzeczywiste, np. width: 69.66% smile.gif
Go to the top of the page
+Quote Post
webdice
post 24.04.2009, 11:23:25
Post #5


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Cytat(pawkow @ 22.04.2009, 21:51:41 ) *
Warto wiedzieć, że procenty można podawać nie tylko jako liczby całkowite, ale także jako liczby rzeczywiste, np. width: 69.66% smile.gif


Jakby nie było, przy zmiennej szerokości nie da się określić ile procentów ma jeden piksel.
Go to the top of the page
+Quote Post
sowiq
post 24.04.2009, 11:53:56
Post #6





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

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


Masz kilka możliwości, ale z nich wszystkich Twoje rozwiązanie wydaje się być najbardziej eleganckie:
- ujemne marginesy + padding-left: 4px dla rodzica
- JS
- CSS expressions
- outline zamiast border, ale tego nie obsługuje IE
- 2-komórkowa tabelka


BTW, jakoś tak jest, że za pomocą tabelek wiele robiłoby się najprościej, chociażby centrowanie pionowe...

[edit]
  1. <div style="width: 500px; height: 150px; border: 1px solid #00f;">
  2. <div style="float: left; height: 100px; width: 30%;">
  3. <div style="height: 100px; background: #ff0; border: 1px solid #000;"></div>
  4. </div>
  5. <div style="float: left; height: 100px; width: 70%;">
  6. <div style="height: 100px; background: #f00; border: 1px solid #000;"></div>
  7. </div>
  8. </div>


Ten post edytował sowiq 24.04.2009, 12:08:02
Go to the top of the page
+Quote Post
webdice
post 24.04.2009, 15:10:23
Post #7


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Tabele odpadają, wiadomo dlaczego. Expressions to w sumie JavaScript, więc lepiej było by napisać wszystko w czystym JS (zwłaszcza że moja aplikacja będzie opierać się głównie o ten język). Outline również odpada z podanego przez Ciebie powodu. Rozwiązanie z ujemnymi marginesami było by całkiem w porządku gdyby nie fakt że na przykład przy zmianie grubości obramowania (nie wspomnę już o paddingach) trzeba zmieniać wartości marginesów. Twoje rozwiązanie mnie jak najbardziej satysfakcjonuje.
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: 12.07.2025 - 15:24