![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 37 Pomógł: 2 Dołączył: 11.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Tak jakoś mnie naszło i zacząłem się zastanawiać jaka forma jest wygodniejsza na dodawanie arkuszy stylów do strony:
Kod <link rel="stylesheet" href="/adres do arkusza/style.css" type="text/css" /> czy może lepiej jest użyć funkcji include() Kod <style type="text/css"> <?php include '/adres do arkusza/style.css'; ?> </style> Tak jak sprawdzałem zaletą drugiego rozwiązania jest to iż jeśli mamy zdefiniowaną np stałą ścieżkę do katalogu z arkuszami to podczas przeniesienia lub zmiany układu folderów w naszej stronie wystarczy zmienić tylko jedną zmienną (np css_path), a poza tym jeśli używamy background-image nei trzeba robić np "../../" bo można skorzystać ze zmiennej image_path. Co o tym śądzicie? Jakie jest Wasze zdanie na temat? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 37 Pomógł: 2 Dołączył: 11.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
No ok sposób ciekawy jak chodzi o połączenie styli z kilku plików w jeden. Rozumiem, że jakoś trzeba to wywołać tylko raz bo inaczej przecież nie ma sensu jak by patrzeć na wydajność serwera (chyba, że się mylę), ale nadal pozostaje problem z "../" idzie się jakoś pozbyć tego zapisu czy trzeba przywyknąć do tego?
EDIT: Właśnie sobie tak na roboczo poprostu przed ob_start() dodałem zmienną path i śmiga ładnie tylko ciągle mnie nurtuje fakt, gdzie to wrzucić by za każdym razem nie generować pliku stylów? Dobra zrobiłem sobie to na podstawie takiego helperka: Kod class Links_Style { public static function display($style_include, $style_out = 'style.css') { $style_parts = explode(':', $style_include); ob_start(); foreach ($style_parts as $style_file) { include DIR_TEMPLATES . 'default/css/' . $style_file; echo "\n"; } //include DIR_TEMPLATES . 'default/css/reset.css'; //include DIR_TEMPLATES . 'default/css/template.css'; $content = ob_get_clean(); file_put_contents(DIR_TEMPLATES . 'default/css/'.$style_out, $content); $path = URL . DS . 'templates/default/css/'.$style_out; echo $path; } // end display(); } GDZIE: $style_include = nazwy arkuszy stylów rozdzielone dwukropkiem (np: styl1.css:styl2.css), $style_out = nazwa pliku wyjściowego ogólnie całość zwraca link do pliku css a wywołuję to tak: Kod <link rel="stylesheet" href="<?php Links_Style::links_style('reset.css:template.css');?>" type="text/css" /> No i includuje wszystko cacy, ale (IMG:style_emoticons/default/tongue.gif) ... jak to ma się do wspomnianej wyżej wydajności? Skrypt przecież jest wywoływany za każdym razem jak otwieram każdą stronę/podstronę. Ten post edytował Rudi1204 24.01.2011, 12:10:54 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 02:02 |