![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 375 Pomógł: 20 Dołączył: 28.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
Niektóre elementy <div> (np. kontener na newsy, menu) mają zaokrąglone rogi. Popatrzmy na przykład:
W powyższym przykładzie nagłówek składa się z 3 części: lewego narożnika, środka i prawego narożnika. Takie rozwiązanie pozwala na zastosowanie długości procentowej - można dowolnie rozciągnąć nagłówek. Niestety, kod HTML zajmuje więcej miejsca i nie jest uniwersalny. Popatrzmy jeszcze na stopkę - zakończenie boksu. W przykładzie może ona mieć tylko stałą szerokość. Ustalenie procentowej zawartości spowoduje deformację, bo 1 plik graficzny zawiera już narożniki. Poszukuję takiego rozwiązania, aby dało się dowolnie rozszerzać nagłówek i stopkę, ale nie wymagało to nadmiaru kodu. Najlepiej, by wystarczył jeden wpis: Jest to w ogóle możliwe? CSS 3 raczej odpada, bo nie wszystkie przeglądarki wspierają. Co jest lepsze dla użytkownika? 1) Szerokość dostosowana do szerokości przeglądarki 2) Stała szerokość - ale trzeba wybrać 1024x768 albo wyższą Ten post edytował WebCM 9.08.2010, 20:00:56 -------------------- „Jesteśmy różni, pochodzimy z różnych stron Polski, mamy różne zainteresowania, ale łączy nas jeden cel. Cel ten to Ojczyna, dla której chcemy żyć i pracować.” Roman Dmowski
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 305 Pomógł: 25 Dołączył: 27.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
Najlepszym rozwiązaniem jest zastosowanie CSS3. Przeglądarki, które tego nie obsługują będą miały gorszy efekt, trudno. Czas w końcu zmienić przeglądarkę. Userzy którzy tego nie robią będą nadal mieli pełen dostęp do treści, lecz w gorszej jakościowo oprawie.
Ewentualnie dla tych "opóźnionych" można załadować skrypt typu: https://code.google.com/p/mushpup/source/br...query.corner.js |
|
|
![]() ![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 375 Pomógł: 20 Dołączył: 28.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
Są 3 wyjścia:
1) Strona o stałej szerokości, zaś nagłówek można opisać za pomocą tagu <h1>, np. W stylach ustawiamy obrazek tła, którym jest nagłówek o stałej szerokości. Zalety: + brak nadmiarowych znaczników + proste i efektywne rozwiązanie problemu narożników Wady: - strona niedopasowana do ekranu - przy zmianie szerokości nagłówków trzeba zmieniać plik - jeżeli mamy nagłówki o różnej szerokości, wymagają osobnych plików tła 2) Strona o zmiennej szerokości, ale trzeba uwzględnić w kodzie HTML zaokrąglenia nagłówków: W pliku tła są wydzielone 2 narożniki oraz gradient. Arkusz CSS wybiera właściwy element z pliku za pomocą background-position. Pozostaje pytanie, czy to uniwersalne rozwiązanie. Zalety: + narożniki powinny wyświetlić się w każdej przeglądarce + stronę można dostosować do szerokości ekranu + pliki tła nagłówków nie mają z góry określonej szerokości Wady: - nadmiarowy kod - pozostaje pytanie, czy to zgodne z semantyką 3) Zaokrąglenia CSS 3 - rozwiązanie zaproponował porneL na grupach Kod border-radius: 5px 5px 0 0; W HTML-u wystarczy tylko <h1> albo <div class="naglowek"> w zależności, gdzie umieszczamy nagłówek.-moz-border-radius: 5px 5px 0 0; -webkit-border-radius: 5px 5px 0 0; Zalety: + elastyczne zaokrąglenia, które łatwo zmodyfikować w CSS + nie ma potrzeby tworzyć plików graficznych z zaokrągleniami + stosujemy nowe możliwości przeglądarek + brak nadmiarowego kodu HTML Wady: - funkcja wciąż eksperymentalna w Firefoksie i Chrome (tzn. trzeba stosować prefiksy) - nadmiarowy kod w CSS (ze względu na prefiksy) - starsze przeglądarki nie wyświetlą zaokrągleń (nawet IE 8) Nie zbadałem użycia pamięci oraz płynności przewijania, jeśli jest dużo zaokrągleń CSS 3. Który przykład najlepszy? W powyższych przykładach <h1> oznacza nagłówek główny - zazwyczaj występuje tylko raz. Ma to korzystny wpływ na pozycjonowanie (?), a poza tym robotom łatwiej zbudować logiczną strukturę dokumentu (gdy jeszcze są <h2>, <h3>). Tu pojawia się kolejne pytanie - czy znacznik <h1> powinien już mieć wszystkie style nagłówków z zaokrągleniami, czy być dzieckiem nadrzędnego znacznika <div> opisującego nagłówek? Wcześniej stosowałem pierwszy wariant. Mniej kodu, ale co o tym myślicie? Czy to nie ogranicza możliwości zastosowania innych stylów dla niektórych nagłówków lub użycia <h1> w innym miejscu? -------------------- „Jesteśmy różni, pochodzimy z różnych stron Polski, mamy różne zainteresowania, ale łączy nas jeden cel. Cel ten to Ojczyna, dla której chcemy żyć i pracować.” Roman Dmowski
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 309 Pomógł: 20 Dołączył: 13.02.2010 Skąd: Kęty Ostrzeżenie: (0%) ![]() ![]() |
3. IE i tak powiedziało, że nie wprowadzi CSS3 do swojej przeglądarki ... wiadomo dlaczego ...
![]() -------------------- Fotografia, projektowanie stron WWW | web-coding.pl - HTML 5 i CSS 3 - już w krótce ;)
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 375 Pomógł: 20 Dołączył: 28.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
Podaj źródło. Jeżeli IE 9 nie dostosuje się do standardów, nie ułatwi życia twórcom i internautom i nie wprowadzi CSS 3, organizuję manifestację przed polską siedzibą Microsoftu
![]() Też jestem za sposobem nr 3, ale jeżeli miałbym wybierać spośród 2 poprzednich - który lepszy i dlaczego? -------------------- „Jesteśmy różni, pochodzimy z różnych stron Polski, mamy różne zainteresowania, ale łączy nas jeden cel. Cel ten to Ojczyna, dla której chcemy żyć i pracować.” Roman Dmowski
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 251 Pomógł: 2 Dołączył: 24.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat 3. IE i tak powiedziało, że nie wprowadzi CSS3 do swojej przeglądarki ... wiadomo dlaczego . Nie prawda. Nie to zebym byl zwolennikiem IE, ale zainstaluj sobie IE9 Preview 4. Niebawem inne przegladarki beda mialy problemy z utrzymaniem "wladzy". http://samples.msdn.microsoft.com/ietestcenter/ To co tu podaja to wszystko prawda. Dodatkowo 95 punktow w ACID3 (w wersji finalnej bedzie zapewne 100) oraz IE szybszy od FF w Sunspider (prawie tyle co Chrome). -------- Jezeli chodzi o zaokraglanie rogow to wystarczy: border-radius oraz -moz-border-radius i we wszystkich przegladarkach w najnowszych wersjach (konqueror, safari, chrome, opera, firefox) oraz niebawem w IE9 dziala. Cytat - funkcja wciąż eksperymentalna w Firefoksie i Chrome (tzn. trzeba stosować prefiksy) W Chrome 5, Safari 5 juz nie jest eksperymentalna. Ten post edytował kufalo 12.08.2010, 10:29:50 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 305 Pomógł: 25 Dołączył: 27.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
http://css3pie.com/
WebCM, powyższa biblioteka powinna Cię zainteresować :-) Masz tam border-radius z CSS3 + hack dla IE6-IE8. Nic dodać nic ująć, moim zdaniem. Choć ja i tak nie dodawałbym wcale obsługi zaokrągleń do IE, niech cierpią ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 1.05.2025 - 05:04 |