Jakie są najlepsze praktyki korzystania z frameworka CSS? Kiedy lepiej „rzucić własny” CSS od zera, niż używać frameworków?
css-framework
Mark Hatton
źródło
źródło
Po prostu ich unikaj, są po prostu denerwujące.
Zwłaszcza ten.
Moją największą skargą jest to, że jeśli odziedziczysz / utrzymujesz witrynę, która używa resetowania i / lub frameworka, musisz nauczyć się tego frameworka, zanim będziesz mógł zmodyfikować witrynę.
Po dodaniu znacznika h1 oczekuję pewnych rzeczy. Większość resetów usuwa wszystkie dopełnienia, marginesy, bloki itp., Dzięki czemu znacznik h1 nie działa już tak, jak powinien. Muszę więc wrócić i dodać wszystko, co tam było.
Ogólnie (z mojego doświadczenia) ludzie, którzy nie rozumieją css, którzy używają resetów i ram, i powoduje to więcej pracy dla ludzi, którzy to robią.
źródło
* {margin:0; padding:0;}
jest najważniejszym resetem CSS ze wszystkich. Usuwamargin-top/maring-bottom
pod wszystkimi tagami nawetp
tagi, więc po tym, jak nie zobaczysz dużej przestrzeni między każdą linią. Nawet ta strona prawdopodobnie używa, wp {margin:0;}
przeciwnym razie przeglądarka mieszkałaby ogromną przestrzeń między każdą linią. Zastanawiam się, jak możesz powiedzieć, że są denerwujące.Moim zdaniem jedyna usługa zapewniana przez CSS Framework jest punktem wyjścia dla tych, którzy nie są zbyt dobrze zaznajomieni z CSS.
źródło
Polecam również użycie reset.css od Erica Meyera, ale myślę, że „frameworki” CSS mogą być korzystne dla układu. Blueprint, YUI grid i 960-grid mogą pomóc w osiągnięciu bardzo skomplikowanych układów bez samodzielnego pisania css.
Chociaż wspomniano wady, to samo można powiedzieć o budowaniu strony internetowej poza CMS zamiast na przykład niestandardowego kodu, ale mogą one być przydatne i dla wielu witryn uzyskane korzyści przeważają nad wszelkimi dodatkowymi problemami z css lub wydajnością.
źródło
Jeśli faktycznie wdrażasz własny projekt, napiszesz własny CSS (chyba że ktoś inny napisał dokładnie taki projekt, jaki chcesz).
Zakładając, że piszesz własny CSS, „frameworki” mogą być przydatne, gdy masz style, które są:
W przypadku naprawdę prostych stylów lepiej jest użyć klas, aby wskazać, czym coś jest (np.
class="navigation"
), A następnie zdefiniować jego wygląd, stosując reguły stylów do tej klasy w arkuszu stylów.Ale w przypadku bardziej złożonych stylów, które niekoniecznie są powiązane z żadnym elementem (np. Style związane z układem, takie, jakie dają nazwy ram
.span3
), nie ma nic złego w umieszczeniu ich w klasie i zastosowaniu tej klasy w CSS. Możesz zastosować oba podejścia razem.W większych, bardziej złożonych witrynach, w których elementy mogą być łączone w nieprzewidywalny sposób, podejście oparte na strukturze może naprawdę pomóc w zarządzaniu kodem.
Powiedziałbym, że równie dobrze możesz napisać własną „strukturę”. W cytatach umieszczam „framework”, ponieważ CSS nie jest tak dużym językiem. Możesz przeczytać CSS: The Definitive Guide (Eric Meyer) w ciągu jednego dnia, a następnie przeczytać cały kod np. Blueprint („framework” CSS) i prawie zrozumieć, co się dzieje. Być może trzeba trochę zbadać obejścia IE, ale mówimy tu o co najmniej o rząd wielkości mniej złożoności niż np. JQuery tutaj.
źródło
Używam blueprint, do CSS.
CSS jest, jak wszyscy powyżej mówią, bardzo prosty.
Jednak w rzeczywistości musisz wziąć pod uwagę platformę.
W przypadku CSS silnik renderujący zwiększa złożoność.
Gecko vs WebKit vs Presto vs Trident ... kto chce robić te wszystkie rzeczy?
To, co daje ci tutaj „framework”, to możliwość pisania układów, które najprawdopodobniej będą działały na wszystkich przeglądarkach, więc nie będziesz musiał googlować w trybie „WTF-am-I-doing = -this-crap” IE 7 quirksmode naprawić lub coś podobnie śmiesznego.
Szkielety wykonają 90% pożądanego układu, a następnie zawsze możesz dodać własne style później.
Tak więc, aby odpowiedzieć na pytanie, powiedziałbym, że wybierz dowolny szkielet i sprawdź, czy to działa dla ciebie. Po prostu może. Jesteś złoty i możesz wrócić do wszystkiego, co naprawdę chciałeś zrobić. Jeśli nie, rozszerz go, używając css i zmień to, co nie działało. W ten sposób możesz zachować korzyści dla różnych przeglądarek, ale nadal możesz je dostosowywać.
Niewielką korzyścią jest to, że jeśli wybierzesz jedną z nich i będziesz z niej korzystać cały czas, a następnie zachorujesz, awansujesz i będziesz musiał szkolić swojego następcę, możesz powiedzieć:
„Tak, użyłem frameworka ABC. Dokumenty są tutaj. Kod jest. Szkolenie zakończone. Powodzenia.”
źródło
Kiedy rozwiąże wszystkie Twoje potrzeby . (Jest to oparte na idei krawiectwa ).
Z jedynej książki na temat ram? http://www.oreilly.com/web-platform/free/book-of-html-css-frameworks.csp . (Łączenie tylko dlatego, że jest bezpłatne i istotne tutaj.)
źródło