คุณใช้ HTML5 รีเซ็ต CSS ใดและเพราะเหตุใด [ปิด]


123

คุณใช้ HTML5 รีเซ็ต CSS ใดและเพราะเหตุใด มีกรณีที่คุณพบว่าครอบคลุมมากกว่านี้หรือไม่?

ฉันเริ่มใช้ HTML5 Doctor's: http://html5doctor.com/html-5-reset-stylesheet/ดูเหมือนจะใช้ได้ แต่ฉันสงสัยว่าจะมีอะไรที่ดีกว่านี้หรือไม่



มันคล้ายกันใช่ แต่ฉันแค่ต้องการใช้คนอื่นแทนที่จะแก้ไขเพื่อให้ใช้งานได้ในภายหลังหากจำเป็นฉันสามารถคัดลอกเวอร์ชันที่ใหม่กว่าได้
Darryl Hein

20
D_N ฉันเข้าใจดี แต่ HTML5 มีผลต่อ CSS โดยเฉพาะอย่างยิ่งใน CSS ที่รีเซ็ตซึ่งตอนนี้คุณต้องรวมแท็กอื่น ๆ เช่น nav หรือกัน
Darryl Hein

คำตอบ:


40

พูดจริง: แม้ว่า markdowns kaikaiจะถูกต้อง แต่คุณจะต้องรีเซ็ต * padding & margin เป็น 0 เท่านั้น

แม้ว่า 99% ของพวกเราไม่มีทรัพยากรหรือกำลังคนที่จะติดตามเบราว์เซอร์หลายร้อยเวอร์ชัน ดังนั้นแผ่นรีเซ็ตจึงเป็นสิ่งจำเป็นสำหรับเว็บไซต์ทั่วไป

html5reset :( มันรบกวนเกินไป)

ฉันเพิ่งดูที่http://html5reset.org/

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

และ:

html {overflow-y: scroll;}

ฉันเข้าใจว่ามันมีเจตนาที่ดี แต่นั่นไม่ใช่หน้าที่ของแผ่นรีเซ็ต มันตั้งสมมติฐานมากเกินไป

BluePrint Reset: (พิมพ์เขียว)

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

อะไรขึ้นกับ 1.5 แล้วทำไมพื้นหลังเป็นสีขาว (ฉันรู้ว่ามันใช้สำหรับการแก้ไข แต่ก็ยังไม่จำเป็น)

Normalize.css :( ไม่ปกติ)

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

เริ่มต้นได้ดีกับ webkit / ie แฮ็ก แต่

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;
}

ทุกแท็กส่วนหัวถูกกำหนดเป้าหมาย & พวกเขาไม่ได้รีเซ็ตความสูงบรรทัดของร่างกาย

ฉันแน่ใจว่าสิ่งที่กล่าวมาทั้งหมดทำงานได้ดี แต่อาจจะถูกลบล้างมากเกินความจำเป็น

Eric Meyer

ยูอิ

HTML5Boilerplate

ข้างต้นเป็นข้อมูลเพิ่มเติมสำหรับมืออาชีพที่มี Boilerplate เอนไปทางด้าน (มากกว่าเป็นมิตร) ฉันแน่ใจว่าเนื่องจากความนิยม ในขณะนี้ 80% ของการรีเซ็ตแบบกำหนดเองของฉันเป็นแบบสำเร็จรูป

ฉันจะไปแม้ว่าทั้งสามทีละนิดและทำด้วยตัวเองมันไม่ใช่วิทยาศาสตร์จรวด


2
โปรดทราบว่า normalize.css มีการเปลี่ยนแปลงในขณะนี้ ไม่ได้กำหนดขนาดแบบอักษรของส่วนหัวอีกต่อไป
Ruben Verborgh

2
ทุกอย่างควรค่าแก่การกล่าวขวัญว่า Normalize.css ไม่เพียง แต่จัดการเบราว์เซอร์บนเดสก์ท็อปเท่านั้น แต่ยังรวมถึงเบราว์เซอร์มือถือเช่น iOS Safari, Chrome สำหรับ Android, เบราว์เซอร์หุ้นและอื่น ๆ ซึ่งมีเอกลักษณ์เฉพาะในแบบของตัวเอง ด้วยเหตุนี้และอื่น ๆ Normalize จึงถูกอบเข้าสู่เฟรมเวิร์กยอดนิยมมากมาย
Matt Smith

ฉันเคยใช้ 'Eric Meyer' แต่ตอนนี้ใช้ 'YUI' reset style sheet เพราะสิ่งนี้: danielsokolowski.blogspot.ca/2012/11/…
Daniel Sokolowski

19

Normalize.cssเหมาะสำหรับทั้งเบราว์เซอร์เดสก์ท็อปและมือถือและใช้ในเทมเพลต HTML ที่เป็นที่นิยมมากมาย

แต่สิ่งที่เกี่ยวกับการใช้allคุณสมบัติCSS ที่รีเซ็ตคุณสมบัติ CSS ยกเว้นdirectionและunicode-bidi? ด้วยวิธีนี้คุณไม่จำเป็นต้องรวมไฟล์เพิ่มเติมใด ๆ :

{
    all: unset
}

CSS allได้รับการสนับสนุนอย่างกว้างขวางยกเว้นใน IE / Edge ในทำนองเดียวกันกับunset.


น่าสนใจ แต่ดูเหมือนว่าจะเป็นโซลูชันที่ช้าที่สุดและรองรับเฉพาะใน Firefox เท่านั้นจึงไม่มีการใช้งานจริง (อย่างน้อยก็ในช่วงเวลานี้)
tomasz86

จริงอยู่ที่ตอนนี้มีเพียง Firefox เท่านั้นที่รองรับ แต่ฉันคิดว่ามันมีโอกาสที่ดีที่จะลงเอยด้วยโซลูชันเช่น Modernizr github.com/Modernizr/Modernizr/issues/1219
Matt Smith

6

reset.cssใช้โดยพิมพ์เขียว CSSกรอบทำงานได้ดีและรวมถึงองค์ประกอบ HTML5 จะรวมอยู่ในไฟล์screen.css

พิมพ์เขียวเป็นแหล่งข้อมูลที่มีประโยชน์สำหรับการสร้างต้นแบบไซต์ใหม่อย่างรวดเร็วและซอร์สโค้ดได้รับการจัดระเบียบอย่างดีและควรค่าแก่การเรียนรู้



3
  1. รักษาค่าเริ่มต้นที่เป็นประโยชน์ซึ่งแตกต่างจากการรีเซ็ต CSS จำนวนมาก
  2. ปรับรูปแบบให้เป็นมาตรฐานสำหรับองค์ประกอบ HTML ที่หลากหลาย
  3. แก้ไขข้อบกพร่องและความไม่สอดคล้องกันของเบราว์เซอร์ทั่วไป
  4. ปรับปรุงการใช้งานด้วยการปรับปรุงเล็กน้อย
  5. อธิบายว่าโค้ดทำอะไรโดยใช้ความคิดเห็นโดยละเอียด

Normalize.css


2
* {
    margin: 0;
    padding: 0;
}

เรียบง่าย แต่มีประสิทธิภาพทั้งหมด อาจโยน:

body {
    font-size: small;
}

เพื่อการวัดที่ดี


9
การกำหนดระยะขอบเริ่มต้นและช่องว่างภายในบนตัวควบคุมแบบฟอร์มอาจมีผลกระทบที่ไม่พึงประสงค์และคำหลักขนาดแบบอักษรที่ตั้งชื่อไม่มีลักษณะการทำงานที่สอดคล้องกันทั้งหมดในเบราว์เซอร์ นี่เป็นเรื่องง่ายเกินไป นอกจากนี้ยังล้มเหลวในการตั้งค่ารูปแบบสำหรับองค์ประกอบแนะนำใน HTML 5 display: inlineเพื่อให้พวกเขายังคงอยู่
Quentin

4
ฉันไม่เห็นด้วย. ระยะขอบและช่องว่างภายในเป็นคุณสมบัติที่ไม่สามารถคาดเดาได้เท่านั้น คุณสมบัติขนาดฟอนต์ใช้คีย์เวิร์ดที่ตั้งชื่อเพื่อกำหนดเป้าหมายเฉพาะเบราว์เซอร์ที่อ่านสิ่งเหล่านั้นซึ่งทำให้แบบอักษร YUI มีประสิทธิภาพในทุกเบราว์เซอร์หลัก ( developer.yahoo.com/yui/examples/fonts/fonts-size_source.html ) ฉันก็ไม่ต้องการกำหนดให้องค์ประกอบไหลเวียนตามปกติดังนั้นฉันจะปล่อยให้องค์ประกอบ HTML 5 เหล่านั้นอยู่คนเดียวโดยเปลี่ยนประเภทการแสดงผลหรือการวางตำแหน่งตามความจำเป็นเท่านั้น ฉันตระหนักดีว่าตัวเลือกของฉันไม่เป็นที่นิยม แต่มันหรูหรากว่าโซลูชันอื่น ๆ มากและได้ผล
kaikai

3
ไม่ไม่ไม่ไม่ไม่! องค์ประกอบ HTML5 display: inlineจะได้ไม่ต้องมีชุดคุณสมบัติจอแสดงผลเพื่อให้พวกเขาได้อย่างสง่างามถอยกลับไปเริ่มต้น คุณเคยเห็นแผนผังไซต์ที่ส่วนหัวส่วนท้ายการนำทางคอลัมน์ด้านข้างแทบทุกส่วนของหน้าไหลในบรรทัด ??? ขอโทษ kaikai แต่มันไม่เป็นที่ยอมรับ!
Filip Dupanović

เพื่อนฉันไม่ใช่แม้แต่กูรู HTML5 (ยัง) และฉันรู้ว่านี่ไม่ใช่วิธีรีเซ็ตที่ถูกต้องโดยสิ้นเชิง
Icemanind

4
คำตอบที่ถูกต้องแน่นอน ข้อเสียเปรียบเพียงอย่างเดียวคือ*ตัวเลือกทำงานช้าฉันได้ยิน
Anton Strogonoff

2

ข้อมูลจำเพาะ HTML5 ประกอบด้วยการประกาศ CSS ที่แนะนำสำหรับเบราว์เซอร์ที่รองรับ CSS เพื่อความสนุกฉันจึงจับมันและเปลี่ยนกลับในที่ที่มันสมเหตุสมผล คุณสามารถดูผลที่ได้ในบทความนี้

อย่างไรก็ตามฉันไม่แนะนำให้ใช้สิ่งนี้ในการผลิต เป็นการพิสูจน์แนวคิดและอาจใช้เพื่อให้คำแนะนำได้ดีกว่าการใช้เป็นสไตล์ชีตที่ตั้งค่าใหม่ทั้งหมด คำแนะนำอื่น ๆ ก่อนหน้านี้อาจเป็นทางเลือกที่ดีกว่า


0

ฉันใช้ Normalize หรือการรีเซ็ตจาก HTML5 Doctor และฉันแก้ไขให้พอดีกับโปรเจ็กต์ที่ฉันกำลังทำอยู่

BTW เป็นเพียงแนวคิดของการใช้การรีเซ็ตที่เป็นมาตรฐานมากหรือน้อย


คุณมีรายละเอียดเพิ่มเติมหรือไม่?
James A Mohler

ฉันไม่ทิ้งองค์ประกอบที่ฉันไม่ได้ใช้ไอออนในโครงการเฉพาะ ตัวอย่างเช่นฉันลบองค์ประกอบของฟอร์มหากฉันไม่ได้ใช้แบบฟอร์ม ฉันแน่ใจว่าคุณเข้าใจแล้ว ไม่มีประเด็นในการรีเซ็ตองค์ประกอบที่คุณไม่ได้ใช้
cornishninja

เพื่อสำรองประเด็นของฉันเกี่ยวกับการปรับเปลี่ยนการรีเซ็ตให้เหมาะกับความต้องการของฉัน: cssreset.com/which-css-reset-should-i-use
cornishninja
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.