Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CSS][PHP] Jak ubrać stronę?
Forum PHP.pl > Forum > Przedszkole
Pytajka
No właśnie, napisałem stronę skryptowo, ale jakoś nie mogę pojąć tego jak ubrać stron w taki sposób aby CSS nie znajdowało się w plikach php, bo przecież tak jest źle, prawda?

U góry nic się nie zmienia, dół też, tylko środek, bez sensu gdybym musiał ubierać wszystkie podstrony oddzielnie. Jak to rozwiązać?
peter13135
nie wiem dokładnie o co Ci chodzi, ale zainteresuj się hasłem MVC albo systemem szablonów (np. smarty).
kamil4u
Nadaj klasy, id itd., a później za pomocą CSS w zewnętrznym pliku zmieniaj wygląd tych elementów.
Pytajka
Chodzi o to że mam już napisaną cały system CMS i chciałbym go "ubrać w jakieś szaty" z tym że jest tam n stron i wiem że idzie jakoś ominąć problem kodowanie każdej strony osobno skoro zmienia się np tylko środek strony.


Cytat(kamil4u @ 6.09.2011, 17:22:55 ) *
Nadaj klasy, id itd., a później za pomocą CSS w zewnętrznym pliku zmieniaj wygląd tych elementów.


Tyle to ja wiem, umiem zakodować layout do HTML, ale nie wiem jak sobie poradzić z tym co napisałem powyżej. Bo jak np. kodujesz swój CMS to wklepujesz divy odzielnie do każdego pliku php?
kamil4u
Na pewno część elementów ze środka się powtarza - tym nadajesz klasy np. "lista","akapit", "obrazek_po_lewej", "obrazek_po_prawej"(oczywiście wypada, aby nazwy były po ang.)

Tym elementom co się nie powtarzają i tak potrzebujesz nadać style. Wtedy do głównego div-a(środkowego) nadajesz klasę np. "kontakt" i w zewnętrznym pliku CSS:
  1. /**KLASY OGÓLNE**/
  2. .list{ .... }
  3. .akapit{ ... }
  4.  
  5. /**KONTAKT**/
  6. .kontakt textarea{ ...}
  7. .kontakt input{ ... }
  8.  
  9. /**Galeria**/
  10. .galeria img{ ... }
Pytajka
Nie rozumiesz mnie, chodzi mi o to aby cały layout zakodować do jednego pliku, bo np. przy 300 plikach php do każdego mam wklepywać divy? Prosty przykład, gdy pobierasz styl do jakiegoś CMSa z internetu, dostajesz sam szablon, a nie CMS z już wbitym szablonem.
peter13135
Napisałem Ci wszystko w pierwszym poście. MVC rozwiąże Twoje problemy.
Rid
Peter 13135 dobrze wspomniał żeby sie Pan zainteresował modelem MVC-chyba za pomocą tego modelu możnaby takie coś uzyskać.
Albo za pomocą cshtml-gdzie renderuje się oddzielne strony(header.cshtml,menu.cshtm,footer.cshtml) w jedną stronę o nazwie np.MojaStrona.cshtm,ale to tylko mała ciekawostka,bo to programowanie w innym języku niż php.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.