Którego resetowania CSS HTML5 używasz i dlaczego? [Zamknięte]

123

Którego resetowania CSS HTML5 używasz i dlaczego? Czy jest taki, który znalazł zastosowanie w większej liczbie przypadków?

Zacząłem używać HTML5 Doctor's: http://html5doctor.com/html-5-reset-stylesheet/ Wydaje się, że działa, ale zastanawiam się, czy jest coś lepszego.

Darryl Hein
źródło
Jest podobnie, tak, ale bardziej chcę użyć kogoś innego zamiast modyfikować go, aby działał, więc w późniejszym terminie, w razie potrzeby, mogę po prostu skopiować nowszą wersję.
Darryl Hein
20
D_N Rozumiem to, ale HTML5 ma wpływ na CSS, szczególnie na zresetowany CSS, w którym teraz musisz dołączyć inne tagi, takie jak nav lub na bok.
Darryl Hein

Odpowiedzi:

40

Prawdziwa rozmowa: Pomimo przeceny kaikai ma rację, wystarczy zresetować * dopełnienie i margines do 0.

Chociaż niestety 99% z nas nie ma zasobów ani siły roboczej, aby nadążyć za setkami dostępnych wersji przeglądarek. Tak więc arkusz resetowania jest niezbędny dla typowej strony internetowej.

html5reset: (zbyt przeszkadza)

Właśnie rzuciłem okiem na http://html5reset.org/

img,
object,
embed {max-width: 100%;}

I:

html {overflow-y: scroll;}

Rozumiem, że ma dobre intencje, ale to nie jest zadanie resetowania arkusza. Robi zbyt wiele założeń.

Reset BluePrint: (dosłownie plan)

body {
  line-height: 1.5;
  background: white;
}

Co słychać z 1.5. A dlaczego białe tło? (Wiem, że to do korekty, ale nadal nie jest to konieczne)

Normalize.css: (Nie normalne)

https://github.com/necolas/normalize.css/blob/master/normalize.css

Zaczęło się dobrze od niektórych webkitów / hacków, ale

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

h2 {
    font-size: 1.5em;
    margin: 0.83em 0;
}

h3 {
    font-size: 1.17em;
    margin: 1em 0;
}

h4 {
    font-size: 1em;
    margin: 1.33em 0;
}

h5 {
    font-size: 0.83em;
    margin: 1.67em 0;
}

h6 {
    font-size: 0.75em;
    margin: 2.33em 0;
}

Każdy tag nagłówka jest kierowany. i nie resetują wysokości linii ciała.

Jestem pewien, że wszystkie powyższe czynności dobrze spełniają swoje zadanie, ale prawdopodobnie zostaną zastąpione bardziej niż to konieczne.

Eric Meyer

YUI

HTML5Boilerplate

Powyższe jest bardziej dla profesjonalistów z Boilerplate przechylonym w (zbyt przyjazną) stronę, jestem pewien ze względu na popularność. W tej chwili 80% mojego niestandardowego resetowania to szablon.

Mam zamiar przejść przez wszystkie trzy etapy i stworzyć własne, to nie jest fizyka jądrowa.

Niezdefiniowane
źródło
2
Zauważ, że normalize.css już się zmienił; rozmiary czcionek w nagłówkach nie są już ustawione.
Ruben Verborgh,
2
Warto wspomnieć, że Normalize.css nie tylko zarządza przeglądarkami komputerowymi, ale także przeglądarkami mobilnymi, takimi jak iOS Safari, Chrome na Androida, przeglądarki zapasowe i inne, które są wyjątkowe same w sobie. Z tego i innych powodów Normalize jest wbudowany w wiele popularnych frameworków.
Matt Smith,
Kiedyś używałem „Eric Meyer”, ale teraz używam arkusza stylów resetowania „YUI” z tego powodu: danielsokolowski.blogspot.ca/2012/11/…
Daniel Sokolowski
19

Normalize.css doskonale sprawdza się zarówno w przeglądarkach stacjonarnych, jak i mobilnych i jest używany w wielu popularnych szablonach HTML.

Ale co z używaniem allwłaściwości CSS, która resetuje właściwości CSS z wyjątkiem directioni unicode-bidi? W ten sposób nie musisz dołączać żadnych dodatkowych plików:

{
    all: unset
}

CSS allma szerokie wsparcie z wyjątkiem IE / Edge. Podobnie z unset.

Matt Smith
źródło
Ciekawe, ale wydaje się, że jest to najwolniejsze rozwiązanie i obsługiwane tylko w Firefoksie, więc nie ma rzeczywistego zastosowania (przynajmniej w tym momencie).
tomasz86
To prawda, że ​​obecnie obsługuje go tylko Firefox, ale myślę, że ma duże szanse na znalezienie się w rozwiązaniach takich jak Modernizr. github.com/Modernizr/Modernizr/issues/1219
Matt Smith
6

Plik reset.css używany przez framework Blueprint CSS działa dobrze i zawiera elementy HTML5. Zostaje dołączony do ich pliku screen.css .

Blueprint to przydatne źródło do szybkiego tworzenia prototypów nowych witryn, a ich kod źródłowy jest dobrze zorganizowany i warto się z niego uczyć.

calvinf
źródło
4

Eric Meyer wydał również wersję 2 swojego resetu CSS (i zrobił to prawie rok temu):

http://meyerweb.com/eric/tools/css/reset/

Illes Peter
źródło
Prosty, ale skuteczny i szybszy niż resetowanie oparte na * uniwersalnym selektorze.
tomasz86
3
  1. Zachowuje przydatne ustawienia domyślne, w przeciwieństwie do wielu resetowań CSS.
  2. Normalizuje style dla szerokiej gamy elementów HTML.
  3. Poprawia błędy i typowe niespójności przeglądarki.
  4. Poprawia użyteczność dzięki subtelnym ulepszeniom.
  5. Wyjaśnia, co robi kod, używając szczegółowych komentarzy.

normalize.css

zzart
źródło
2
* {
    margin: 0;
    padding: 0;
}

proste, ale całkowicie skuteczne. być może dorzuć:

body {
    font-size: small;
}

na dokładkę.

kaikai
źródło
9
Zapakowanie domyślnego marginesu i dopełnienia na kontrolkach formularza może mieć niepożądane efekty, a nazwane słowa kluczowe określające rozmiar czcionki nie mają całkowicie spójnego zachowania w różnych przeglądarkach. To jest zbyt uproszczone. Nie udaje się również ustawić stylów dla elementów wprowadzonych w HTML 5, więc pozostają display: inline.
Quentin
4
Nie zgadzam się. Margines i wypełnienie to jedyne nieprzewidywalne właściwości. Właściwość font-size wykorzystuje nazwane słowo kluczowe, aby kierować reklamy do przeglądarek, które je czytają, co sprawia, że ​​skalowanie czcionek YUI jest skuteczne w każdej większej przeglądarce ( developer.yahoo.com/yui/examples/fonts/fonts-size_source.html ). Nigdy też nie chciałbym narzucać normalnego przepływu elementów, więc zostawiłbym te elementy HTML 5 w spokoju, zmieniając tylko ich typ wyświetlania lub położenie w razie potrzeby. Zdaję sobie sprawę, że mój wybór jest niepopularny, ale jest o wiele bardziej elegancki niż inne rozwiązania i działa.
kaikai
3
Nie nie nie nie nie! Elementy HTML5 nie mają ustawionej właściwości display, więc wdzięcznie wracają do wartości domyślnych display: inline. Czy widziałeś kiedyś diagram witryny, w którym nagłówek, stopka, nawigacja, kolumny boczne, praktycznie każda sekcja strony jest umieszczona w tekście? Przepraszam, kaikai, ale to po prostu nie do przyjęcia!
Filip Dupanović
Stary, nie jestem nawet guru HTML5 (jeszcze) i wiem, że to zupełnie nie jest właściwy sposób resetowania.
Icemanind
4
Jak najbardziej poprawna odpowiedź. *Słyszałem, że jedyną wadą może być to, że selektory działają wolno.
Anton Strogonoff
2

Specyfikacja HTML5 zawiera zalecane deklaracje CSS dla przeglądarek obsługujących CSS. Dla zabawy wziąłem je i przywróciłem te, w których ma to sens. Możesz zobaczyć wynik w tym artykule .

Jednak nie polecam używania tego w produkcji. Jest to bardziej dowód słuszności koncepcji i może być lepiej używany do udzielania wskazówek niż do uniwersalnego resetowania arkusza stylów. Wszelkie inne sugestie podane wcześniej mogą być lepszym wyborem.

Boldewyn
źródło
0

Używam Normalize lub reset z HTML5 Doctor i dostosowuję to do projektu, nad którym pracuję.

A tak przy okazji, to tylko koncepcja użycia resetu stała się mniej więcej standardem.

cornishninja
źródło
Czy masz dodatkowe szczegóły?
James A Mohler
Nie zostawiam w elementach, których nie używam w konkretnym projekcie. Na przykład usuwam elementy formularza, jeśli nie używam formularzy. Jestem pewien, że masz pomysł. Nie ma sensu resetować elementów, których nie używasz.
cornishninja
Aby potwierdzić mój punkt widzenia na temat modyfikowania resetowania, aby odpowiadał moim potrzebom: cssreset.com/which-css-reset-should-i-use
cornishninja