เหตุใดหน้าเว็บจึงไม่แสดงข้อความทันที

Apr 25, 2025
คลาวด์และอินเทอร์เน็ต
เนื้อหาที่ไม่ถูกแคช


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

เซสชันคำถามและคำตอบของวันนี้มาถึงเราโดยได้รับความอนุเคราะห์จาก SuperUser ซึ่งเป็นแผนกย่อยของ Stack Exchange ซึ่งเป็นการรวมกลุ่มเว็บไซต์ถาม & ตอบโดยชุมชน

คำถาม

ผู้อ่าน SuperUser Laurent สงสัยมากว่าเหตุใดหน้าเว็บจึงโหลดองค์ประกอบต่างไปจากเดิมอย่างสิ้นเชิง เขาเขียน:

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

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

โปรดทราบว่าฉันมีการเชื่อมต่อที่ช้าซึ่งอาจทำให้เกิดปัญหาขึ้น

ดูตัวอย่าง [above] - ทุกอย่างโหลดแล้ว แต่ต้องใช้เวลาอีกสองสามวินาทีก่อนที่ข้อความจะปรากฏในที่สุด

ให้อะไร? Laurent และพวกเราหลายคนจำช่วงเวลาที่ข้อความโหลดขึ้นมาก่อนและอย่างอื่นอย่างอื่นเช่น GIF แบบเคลื่อนไหวพื้นหลังแบบกระเบื้องและสิ่งประดิษฐ์อื่น ๆ ทั้งหมดของการท่องเว็บในช่วงปลายยุค 90 ที่มาในภายหลัง อะไรเป็นสาเหตุของสถานการณ์ปัจจุบันขององค์ประกอบการออกแบบก่อนข้อความในภายหลัง

คำตอบ

ผู้สนับสนุน SuperUser Daniel Andersson เสนอคำตอบที่มีรายละเอียดอย่างน่าอัศจรรย์ซึ่งจะอยู่ด้านล่างสุดของความลึกลับที่โหลดทำไม:

เหตุผลหนึ่งคือในปัจจุบันนักออกแบบเว็บไซต์ชอบใช้แบบอักษรของเว็บ WOFF รูปแบบ) เช่น ผ่าน แบบอักษร Google Web .

ก่อนหน้านี้ฟอนต์เดียวที่สามารถแสดงบนไซต์คือฟอนต์ที่ผู้ใช้ติดตั้งไว้ในเครื่อง ตั้งแต่เช่น ผู้ใช้ Mac และ Windows ไม่จำเป็นต้องมีแบบอักษรเหมือนกันนักออกแบบมักจะกำหนดกฎตามสัญชาตญาณว่า

แบบอักษรตระกูล: Arial, Helvetica, sans-serif;

โดยที่หากไม่พบแบบอักษรแรกในระบบเบราว์เซอร์จะมองหาแบบอักษรที่สองและสุดท้ายคือแบบอักษร "sans-serif" สำรอง

ตอนนี้เราสามารถให้ URL แบบอักษรเป็นกฎ CSS เพื่อให้เบราว์เซอร์ดาวน์โหลดแบบอักษรได้ดังนี้:

@import url (http://fonts.googleapis.com/css?family=Droid+Serif:400,700);

จากนั้นโหลดแบบอักษรสำหรับองค์ประกอบเฉพาะโดยเช่น:

แบบอักษรตระกูล: 'Droid Serif', sans-serif;

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

ดังตัวอย่างหนึ่งในหนังสือพิมพ์ระดับชาติของฉัน ข่าววันนี้ ใช้แบบอักษรของเว็บสำหรับพาดหัวข่าว แต่ไม่ใช่โอกาสในการขายดังนั้นเมื่อโหลดไซต์นั้นฉันมักจะเห็นโอกาสในการขายก่อนและครึ่งวินาทีต่อมาช่องว่างทั้งหมดด้านบนจะเต็มไปด้วยบรรทัดแรก (ซึ่งเป็นจริงใน Chrome และ Opera ที่ น้อย. ยังไม่ได้ลองคนอื่น).

(นอกจากนี้นักออกแบบยังโรย JavaScript ทุกหนทุกแห่งในทุกวันนี้ดังนั้นอาจมีคนพยายามทำบางสิ่งที่ชาญฉลาดกับข้อความซึ่งเป็นสาเหตุที่ทำให้ข้อความล่าช้านั่นอาจเป็นเรื่องเฉพาะไซต์มาก: แนวโน้มทั่วไปที่ข้อความจะล่าช้า ฉันเชื่อว่าครั้งเป็นปัญหาแบบอักษรของเว็บที่อธิบายไว้ข้างต้น)

ส่วนที่เพิ่มเข้าไป:

คำตอบนี้ได้รับการโหวตมากขึ้นแม้ว่าฉันจะไม่ได้ลงรายละเอียดมากนักหรือบางที เพราะ ของสิ่งนี้ มีความคิดเห็นมากมายในชุดคำถามดังนั้นฉันจะพยายามขยาย […] เล็กน้อย

เห็นได้ชัดว่าปรากฏการณ์นี้เรียกว่า "แฟลชของเนื้อหาที่ไม่มีการจัดเรียง" โดยทั่วไปและโดยเฉพาะอย่างยิ่ง "แฟลชของข้อความที่ไม่มีการจัดเรียง" การค้นหา“ FOUC” และ“ FOUT” จะให้ข้อมูลเพิ่มเติม

ฉันสามารถแนะนำ โพสต์ของ Paul Irish นักออกแบบเว็บไซต์เกี่ยวกับ FOUT เกี่ยวกับแบบอักษรของเว็บ .

สิ่งที่สังเกตได้ก็คือเบราว์เซอร์ต่างๆจัดการสิ่งนี้แตกต่างกัน ฉันเขียนไว้ข้างต้นว่าฉันได้ทดสอบ Opera และ Chrome ซึ่งทั้งคู่มีพฤติกรรมคล้ายกัน คนที่ใช้ WebKit ทั้งหมด (Chrome, Safari ฯลฯ ) เลือกที่จะหลีกเลี่ยง FOUT by ไม่ การแสดงข้อความแบบอักษรของเว็บด้วยแบบอักษรสำรองในระหว่างช่วงเวลาการโหลดแบบอักษรบนเว็บ แม้ว่า แบบอักษรของเว็บถูกแคชไว้ที่นั่น จะ ล่าช้าในการแสดงผล . มีความคิดเห็นมากมายในเธรดคำถามนี้ที่พูดเป็นอย่างอื่นและมันก็ไม่ถูกต้องที่ฟอนต์แคชจะทำงานเช่นนี้ แต่เช่น จากลิงค์ด้านบน:

คุณจะได้รับ FOUT ในกรณีใดบ้าง

  • จะ: การดาวน์โหลดและแสดง ttf / otf / woff ระยะไกล
  • จะ: แสดง ttf / otf / woff ที่แคชไว้
  • จะ: การดาวน์โหลดและแสดง data-uri ttf / otf / woff
  • จะ: การแสดงข้อมูลแคช - uri ttf / otf / woff
  • จะไม่: แสดงแบบอักษรที่ติดตั้งและตั้งชื่อไว้แล้วในกองแบบอักษรดั้งเดิมของคุณ
  • จะไม่: แสดงฟอนต์ที่ติดตั้งและตั้งชื่อโดยใช้ตำแหน่ง local ()

เนื่องจาก Chrome รอจนกว่าความเสี่ยงทั้งสี่จะหมดไปก่อนที่จะแสดงผลจึงทำให้เกิดความล่าช้า ซึ่ง ขอบเขต เอฟเฟกต์สามารถมองเห็นได้ (โดยเฉพาะเมื่อโหลดจากแคช) ดูเหมือนว่าจะขึ้นอยู่กับสิ่งอื่น ๆ จำนวนข้อความที่ต้องแสดงผลและอาจเป็นปัจจัยอื่น ๆ แต่การแคชไม่ได้ทำให้เอฟเฟกต์หมดไป

นอกจากนี้ไอริชยังมีการอัปเดตเกี่ยวกับพฤติกรรมของเบราว์เซอร์ในปี 2554–04–14 ที่ด้านล่างของโพสต์

  • Firefox (ณ FFb11 และ FF4 Final) ไม่มี FOUT อีกต่อไป! วู้ฮู้! http://bugzil.la/499292 โดยทั่วไปข้อความจะมองไม่เห็นเป็นเวลา 3 วินาทีจากนั้นจะนำแบบอักษรสำรองกลับมา แบบอักษรอาจจะโหลดภายในสามวินาทีนั้นแม้ว่า ... หวังว่า ..
  • IE9 รองรับ WOFF และ TTF และ OTF (แม้ว่าจะต้องใช้ไฟล์ บิตฝัง ตั้งสิ่ง - ส่วนใหญ่สงสัยถ้าคุณใช้ WOFF) ยังไง !!! IE9 มี FOUT :(
  • Webkit มี แพทช์รอที่จะลงจอด เพื่อแสดงข้อความสำรองหลังจาก 0.5 วินาที พฤติกรรมเช่นเดียวกับ FF แต่ 0.5 วินาทีแทนที่จะเป็น 3 วินาที

หากนี่เป็นคำถามที่มุ่งเป้าไปที่นักออกแบบเราสามารถหาวิธีหลีกเลี่ยงปัญหาประเภทนี้ได้เช่น webfontloader แต่นั่นคงเป็นอีกคำถามหนึ่ง ลิงก์ของ Paul Irish ให้รายละเอียดเพิ่มเติมเกี่ยวกับเรื่องนี้


มีสิ่งที่จะเพิ่มคำอธิบาย? ปิดเสียงในความคิดเห็น ต้องการอ่านคำตอบเพิ่มเติมจากผู้ใช้ Stack Exchange ที่เชี่ยวชาญด้านเทคโนโลยีคนอื่น ๆ หรือไม่? ดูกระทู้สนทนาฉบับเต็มได้ที่นี่ .

Web Pages That Suck -- Text Doesn't Match The Graphics

How To Paste Into Web Page Fields That Prevent Copy And Paste?

How To Highlight Words, Line And Text In Website Pages

How To Make Google Chrome Read Docs And Web Pages Aloud


คลาวด์และอินเทอร์เน็ต - บทความยอดนิยม

วิธีปิดใช้งานและลบการตั้งค่าการซิงค์บัญชี Windows 10

คลาวด์และอินเทอร์เน็ต Dec 31, 2024

Windows 10 ช่วยให้คุณซิงโครไนซ์การตั้งค่าบนอุปกรณ์ทั้งหมดที่คุณลงชื�..


วิธีเข้าถึงคุณลักษณะและการตั้งค่า Chrome ที่ซ่อนอยู่โดยใช้ Chrome: // Pages

คลาวด์และอินเทอร์เน็ต Jul 11, 2025

Chrome เป็นเบราว์เซอร์ที่เรียบง่าย แต่ภายนอกมีหน้าเว็บมากมายในตัว�..


วิธีสร้างโปสเตอร์ของคุณเองโดยใช้การพิมพ์กระเบื้อง

คลาวด์และอินเทอร์เน็ต May 12, 2025

เนื้อหาที่ไม่ถูกแคช หากโปสเตอร์ติดผนังที่น่าเบื่อของ Spencers ไม่ได..


วิธีเปิดหรือปิดแท็บ Safari ของ iPhone จาก Mac ของคุณ (และในทางกลับกัน)

คลาวด์และอินเทอร์เน็ต Feb 5, 2025

พวกเราหลายคนคุ้นเคยกับสถานการณ์นี้: คุณกำลังมองหาบางสิ่งบางอย�..


วิธีปรับเปลี่ยนพฤติกรรมการแคชใน Internet Explorer 10

คลาวด์และอินเทอร์เน็ต Oct 30, 2025

เนื้อหาที่ไม่ถูกแคช การแคชเป็นคำที่ใช้กันมากในเรื่องเทคโนโลย�..


วิธีซิงค์แท็บที่เปิดบนคอมพิวเตอร์โดยใช้ Google Chrome

คลาวด์และอินเทอร์เน็ต Nov 3, 2024

เนื้อหาที่ไม่ถูกแคช Google Cloud Sync จะซิงค์หลายสิ่งหลายอย่าง แต่น่าเ..


พักแท็บที่ไม่ได้ใช้ใน Firefox

คลาวด์และอินเทอร์เน็ต May 24, 2025

หากคุณเปิดหน้าเว็บที่มีเนื้อหาจำนวนมากใน Firefox ระบบจะเพิ่มการใช้หน่�..


เข้าถึงและจัดการบุ๊กมาร์กแสนอร่อยของคุณด้วยวิธีง่ายๆ

คลาวด์และอินเทอร์เน็ต Sep 21, 2025

กำลังมองหาวิธีง่ายๆในการเข้าถึงและจัดการคอลเลกชัน Delicious Bookmarks ของคุณโ�..


หมวดหมู่