จุดประสงค์ของเครื่องหมายดอกจันก่อนคุณสมบัติ CSS


101

สิ่งต่อไปนี้นำมาจากการรีเซ็ต Yahoo CSS ใครช่วยอธิบายจุดประสงค์ของเครื่องหมายดอกจันได้ไหม

body {
  font:13px/1.231 arial,helvetica,clean,sans-serif;
  *font-size:small;
  *font:x-small;
}

คำตอบ:


117

เป็นการแฮ็ก CSS เฉพาะของเบราว์เซอร์สำหรับ Internet Explorer เวอร์ชัน 7 หรือต่ำกว่า

* คุณสมบัติ: ค่า

แม้ว่า Internet Explorer 7 จะแก้ไขพฤติกรรมเมื่อชื่อคุณสมบัติถูกนำหน้าด้วยเครื่องหมายขีดล่างหรือยัติภังค์คำนำหน้าอักขระที่ไม่ใช่ตัวเลขและตัวอักษรอื่น ๆ จะได้รับการปฏิบัติเช่นเดียวกับใน IE6 ดังนั้นหากคุณเพิ่มอักขระที่ไม่ใช่ตัวเลขและตัวอักษรเช่นเครื่องหมายดอกจัน (*) หน้าชื่อคุณสมบัติคุณสมบัติจะถูกนำไปใช้ใน IE ไม่ใช่ในเบราว์เซอร์อื่น ไม่เหมือนกับวิธีการใช้ยัติภังค์และขีดล่างข้อกำหนดของ CSS จะไม่มีการจองเครื่องหมายดอกจันเป็นคำนำหน้าดังนั้นการใช้แฮ็กนี้อาจทำให้เกิดพฤติกรรมที่ไม่คาดคิดได้เนื่องจากข้อกำหนดของ CSS มีการเปลี่ยนแปลง

* คุณสมบัติ: value ใช้กับค่าคุณสมบัติใน IE 7 และต่ำกว่า อาจใช้งานได้หรือไม่ก็ได้ในเวอร์ชันอนาคต คำเตือน: สิ่งนี้ใช้ CSS ที่ไม่ถูกต้อง

จาก: http://www.javascriptkit.com/dhtmltutors/csshacks3.shtml


5

เป็นการแฮ็ก Internet Explorer หากคุณเพิ่มอักขระที่ไม่ใช่ตัวเลขและตัวอักษรเช่นเครื่องหมายดอกจัน (*) หน้าชื่อคุณสมบัติคุณสมบัติจะถูกนำไปใช้ใน IE7 และต่ำกว่า แต่จะไม่ใช้ในเบราว์เซอร์อื่น

http://www.javascriptkit.com/dhtmltutors/csshacks3.shtml


1

เบราว์เซอร์ทั้งหมดยกเว้น IE ไม่สนใจกฎ เป็นที่รู้จักกันในชื่อดาวสับ ฉันคิดว่า IE7 จะละเว้นกฎในโหมดมาตรฐาน

ในกรณีนี้กฎฟอนต์จะถูกตั้งค่าและแทนที่สำหรับ IE 6 และบางครั้งก็เป็น 7


นี่ไม่ใช่แฮ็ค html แบบดาว อันนั้นไปในตัวเลือกและเป็น CSS ที่ถูกต้อง
bobince

@bobince Star Hack และ Star HTML Hack เป็นสองสิ่งที่แตกต่างกัน: en.wikipedia.org/wiki/CSS_filter#Star_hack vs en.wikipedia.org/wiki/CSS_filter#Star_HTML_hack
Mike Covington

0

เท่าที่ฉันทราบเครื่องหมายดอกจันป้องกันไม่ให้ Firefox อ่านแอตทริบิวต์ แต่ใช้ได้ใน IE


0

เป็นการแฮ็ก CSS กฎนั้นจะใช้กับ IE7 และต่ำกว่าเท่านั้น

ฉันไม่แนะนำให้ใช้ แต่มีวิธีที่ดีกว่าในการแก้ไขความเข้ากันไม่ได้ของ IE


0

การวางอักขระแบบนั้นเป็นการแฮ็ก / วิธีแก้ปัญหาเพื่อให้ IE 6 ใช้คุณสมบัติของสไตล์ในขณะที่ซ่อนจากเบราว์เซอร์ที่ "มีเหตุผล" มากขึ้น

จากที่นี่ :

ในการตัดเรื่องสั้นให้สั้นตัวแยกวิเคราะห์ CSS ของ Internet Explorer มีความก้าวร้าวมากเกินไปในการพยายามค้นหาชื่อของคุณสมบัติและในความเป็นจริงจะละเว้นอักขระที่ไม่ใช่ตัวเลขและตัวอักษรนำหน้า จากการทดสอบของฉันสิ่งนี้ดูเหมือนจะเป็นอย่างน้อยตั้งแต่ IE5 เป็นต้นไป

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.