2009 27 กรกฎาคม 2009

ผู้ใช้งานสไตล์ชีทตัวแทนจำหน่าย: ขอบลึกลับใน Google Chrome

เมื่อวานนี้ทุกอย่างอื่น ๆ "วัน Hog พื้น" ผมได้ทำงานในบางรูปแบบ CSS / tableless ทั้งหมดที่เกิดขึ้นได้ดีใน IE 7, FF 3 และโครมก็จนกว่าผมเห็นบางขอบยกเลิก ignorable เห็นเฉพาะใน Google Chrome แม้ว่าแปลกมากและ worring, มันเป็นข้อผิดพลาดบางปัญหา / ใหม่ที่ผมได้มาค่อนข้างสมเหตุสมผลมีจนเครื่องเทศบางอย่างในการทำงานทางโลกของฉัน เศร้า (แต่ดี) มันได้รับการแก้ไขภายในไม่กี่นาทีของหัว ...

โดยทั่วไปมันดูเหมือน Google Chrome ละเว้น CSS รีเซ็ตของฉัน (margin: 0px) มันจริงที่เกิดจากสไตล์ตัวแทนผู้ใช้ (-webkit-padding เริ่มต้น: 40px) ดังนั้นวิธีการแก้ปัญหาคือการตั้งค่ารูปแบบนี้โดยการตั้งค่า padding: 0 องค์ประกอบการทำงาน
วิธีที่ดีเพื่อป้องกันไม่ให้ปัญหาเหล​​่านี้เกิดขึ้นกับองค์ประกอบใด ๆ คือการใช้ CSS Rest ทั่วโลกดังนี้

* {margin: 0; padding: 0;}

ผู้ใช้แผ่นแบบตัวแทน (Specification) คืออะไร?
ข้อความที่ตัดตอนมาต่อไปนี้นำมาจาก http://meiert.com/en/blog/20070922/user-agent-style-sheets/ ลิงค์ตามไปอ่านเพิ่มเติมเกี่ยวกับผู้ใช้แผ่นแบบตัวแทน

CSS 1 แนะนำความคิดโดยระบุว่าตัวแทนของผู้ใช้แต่ละคน (UA มักจะ 'เว็บเบราเซอร์' หรือ 'ลูกค้าเว็บ') จะมีสไตล์ชีตเริ่มต้นที่มีการจัดเอกสารในที่เหมาะสม - แต่โลกีย์ arguably - ลักษณะ CSS 2 กล่าวว่าสอดคล้องกับตัวแทนผู้ใช้ต้องใช้สไตล์ชีตเริ่มต้น (หรือประพฤติตัวเป็นหากพวกเขา) และที่สไตล์ชีตตัวแทนผู้ใช้ 's เริ่มต้นควรนำเสนอองค์ประกอบของภาษาเอกสารในรูปแบบที่ตอบสนองความคาดหวังของงานนำเสนอทั่วไปสำหรับภาษาเอกสาร; CSS 3 จะเป็นใจเดียวกัน

เนื่องจากคุณสมบัติของ CSS ปล่อยให้มันขึ้นไปการใช้งานว่าจะใช้ "ของจริง" สไตล์ชีตเริ่มต้นสำหรับการแสดงผลหรือไม่ก็ไม่น่าแปลกใจที่คุณจะไม่พบสไตล์ชีตเริ่มต้นในโฟลเดอร์ที่ติดตั้งเบราว์เซอร์ของทุก ซึ่งแตกต่างจากโปรแกรม Internet Explorer ของ Microsoft เช่นเดียวกับ Opera, ตัวอย่างเช่น (และเท่าที่ฉันรู้), เบราว์เซอร์ตุ๊กแกเช่น Firefox และ Netscape Navigator (มองหา "html.css") แต่ยัง Konqueror ทำให้มันค่อนข้างง่ายที่จะเข้าใจจัดแต่งทรงผมของพวกเขาเริ่มต้น


2008 2 สิงหาคม 2008

การตั้งค่า DOCTYPE ใน XSL

สัปดาห์ที่แล้วผมได้สร้างรูปแบบ HTML / CSS progessive สำหรับลูกค้า, การทดสอบใน IE6, IE7 และ FF 3, ประจักษ์สมบูรณ์ดี ... จนกระทั่ง! เค้าโครงไปต่อไปลงวงจร manufacting มันล้มเหลว องค์ประกอบเค้าโครงหน้าเพิ่งไปทั่วทุกสถานที่เมื่อรูปแบบ HTML ได้แปลงเป็น XSL และ XML นำไปใช้กับมัน ... ว้า!!

นอนไม่หลับแล้วมากกว่าวันหยุดสุดสัปดาห์ในความคาดหมายของเช้าวันจันทร์เมื่อฉันจะต้องแก้ไข SH นี้ ** แต่ตอนนี้มี experince เล็กน้อยในการจัดการกับชนิดนี้สถานการณ์ (Quirks เบราว์เซอร์ที่ผมหมายถึง), ฉันรู้มันได้จะทำอย่างไรกับอะไรอย่างอื่น แต่ DOCTYPE .... และมันคือ ...

ปัญหา:
คุณต้องการควบคุมมากกว่า DOCTYPE เนื่องจากการเปลี่ยนแปลงของคุณจะมี DOCTYPE เริ่มต้นอย่างชัดเจนและรูปแบบที่คุณจะออกโยน

โซลูชัน:
XSLT รายละเอียด วิธีการให้ออกไปตั้ง DOCTYPE จาก choise นอกจากนี้สำหรับเรานักพัฒนา UI, หัวข้อที่น่าสนใจจะเป็น วิธีการแสดงผล HTML และ วิธีการส่งออก XML .

ดี! ก่อนที่คุณจะได้รับเบื่อที่นี่คือการแก้ไข

สำหรับเช่นถ้าคุณมี DOCTYPE ต่อไปนี้ในรูปแบบ HTML ของคุณ:. -

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

จากนั้นใน XSL คุณจะต้องมีดังต่อไปนี้: -

<xsl:output method="html" doctype-system="http://www.w3.org/TR/html4/loose.dtd" doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" indent="yes" />

และในที่สุด! ไม่แน่ใจว่าเอาท์พุท XSLT ของคุณเชื่อฟัง DOCTYPE คุณได้เลือกไว้


NDK บ้าน | การแสดงไอที ​​| เพดานการแสดง | Penmenship การแสดง | Awe การแสดง | การแสดงตัวเอง