Ngăn chặn màn hình trắng trước khi tải trang bằng crom?


38

Khi một trang không tải ngay lập tức, Chromium và mọi trình duyệt khác tôi đã thử hiển thị màn hình trắng trước khi chúng nhận được phản hồi từ trang đó:

nhập mô tả hình ảnh ở đây

Mặc dù chrome://settings/personalnói rằng nó sử dụng chủ đề GTK + - trong trường hợp của tôi, đó là Darklooks, có nền tối:

nhập mô tả hình ảnh ở đây

Có cách nào để tránh điều này trong Chromium không? Hoặc, nếu không có, có một trình duyệt không có "vấn đề" này không?


7
Trang của bạn trông thực sự mờ quá!
Greg

Đối với Firefox, bạn có thể thay đổi giá trị browser.display.background_colorthành màu tối hơn (# 333). Cũng thử thêm browser { background-color: #333 !important; }tabbrowser tabpanels { background-color: #333 !important}vào userChrome.css.
Mateen Ulhaq

hack này đã giải quyết flash trắng cho tôi. stackoverflow.com/questions/16243105/

Tôi chỉ đơn giản là cài đặt chủ đề ẩn danh tối chrome chromewewstore/detail/m vật liệu-incognito-dark-t / điều này đã giải quyết vấn đề cho tôi: Không còn trang trắng khi tải trang nữa!
wp78de

Câu trả lời:


14

Đối với Google Chrome và Chromium, bạn có thể là nạn nhân của Vấn đề 1373: Điều hướng các trang web nền tối dẫn đến hiện tượng nhấp nháy màu trắng giữa các trang .

Có một hack để giảm thiểu, nhưng không hoàn toàn loại bỏ, sự khốn khổ của bạn được mô tả trong nhận xét 261 :

Để khắc phục tạm thời, tôi đặt biểu định kiểu người dùng tùy chỉnh để hiển thị các trang có nền đen để trước khi nhận được thông tin kiểu dáng từ trang web, nó sẽ hiển thị cửa sổ màu đen thay vì màu trắng và bây giờ nó sẽ nhấp nháy màu đen, dễ chịu hơn nhiều mắt cho đến khi một giải pháp vĩnh viễn được thực hiện.

Việc hack liên quan đến việc thêm các dòng sau vào trong Custom.cssđó nằm trong thư mục User Stylesheetscủa bạn Default. Trong trường hợp của tôi, con đường là ~/.config/chromium/Default/User Stylesheets.

html, body{
background-color:#000000; //This sets the background color to black
color:#0000FF; //This sets the text to blue, so you can read it on webpages set to use defaults; white is too hard on my eyes and if you dont put this it will be black on black
}

Đối với Firefox, tôi sử dụng đoạn mã sau userChrome.cssnằm ở ~/.mozilla/firefox/profile_name/chrome:

@namespace xul url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);

/*prevent white flash*/
tabbrowser tabpanels { background-color: #111 !important}

Nếu chromethư mục không tồn tại, hãy tạo nó. Lưu ý rằng cả hai chromeuserChrome.csslà trường hợp nhạy cảm.


2
Giải pháp Chromium không hoạt động với tôi vào năm 2015, nhưng giải pháp Firefox chủ yếu làm được. Không thể hoàn toàn tránh nhấp nháy do trình duyệt tải trang tăng dần.
holocronweaver

4
một vụ hack khác bằng cách lấy mã nguồn ở đây github.com/hbtlabs/chromium-white-flash-fix
hbt

1
Phương pháp firefox không hoạt động đối với tôi (ubfox 18.04+ ffox 65.0.1)
wotter

3

Theo tôi biết, tất cả các phương pháp cũ đã sửa lỗi này không còn hoạt động (năm 2016). Tôi đã đưa ra một giải pháp ngày hôm nay để khắc phục vấn đề này và đã viết về nó một số giải pháp có sẵn tại đây: http://jollo.org/LNT/public/chrome-white-flash.html .

Về cơ bản, nó sử dụng tập lệnh autohotkey để vẽ cửa sổ lên chính nó cho đến khi trang tiếp theo được tải, bằng cách vượt qua giai đoạn mà cửa sổ nhấp nháy.


2

Giải pháp tốt đẹp vasa1, đèn flash trắng đã biến mất. Nhưng nền của một số trang web chuyển sang màu đen, hơi xấu:

nhập mô tả hình ảnh ở đây

Vì vậy, tôi đã điều chỉnh CSS đó và kết thúc bằng:

html:not(:hover), body:not(:hover){
    background-color:#000000;
}

Điều này có nghĩa là khi con trỏ không ở trên trang, nền được đặt thành màu đen - khi bạn nhấp vào nút tab mới, con trỏ không ở trên trang, vì vậy nền đen sẽ nhấp nháy thay vì màu trắng. Khi bạn di con trỏ lên trang (khi bạn đang đọc), nền đen sẽ bị quên và thay vào đó, trang web sẽ được sử dụng:

nhập mô tả hình ảnh ở đây nhập mô tả hình ảnh ở đây


Tuyệt quá! Xem nếu bạn có thể thêm nó vào danh sách các bình luận ở đó (số1373). Tôi nghi ngờ bạn có thể không phải vì họ dường như đã hạn chế nhận xét: Chỉ những người dùng có quyền EditIssue mới có thể nhận xét. :(

Và khi tôi thử nghiệm Midori (cũng là WebKit) một năm trước, nó không có màu trắng! Tôi không biết làm thế nào bây giờ. Tôi rời Midori vì nó không thể tùy chỉnh và bị sập (đối với tôi) hoặc một số trang quan trọng.

1
Cách tiếp cận này không còn hiệu quả vào năm 2016
ecoe

1

CẬP NHẬT: Tôi đã thay đổi câu trả lời của mình để sử dụng màn hình mờ tạm thời vì giải pháp trước đây của tôi bị lỗi và khiến trạng thái cuộn trình duyệt bị hỏng.

Giải pháp này sử dụng tập lệnh tự động hóa được thiết lập dưới dạng dịch vụ được cung cấp cho Chrome và cuối cùng được ánh xạ tới lối tắt bàn phím trong hệ thống. Giải pháp đơn giản là chỉ làm mờ màn hình khoảng 5x hoạt động với tôi nhưng bạn có thể muốn chơi với việc gửi đó tùy thuộc vào độ sáng của bạn. Nếu bạn sử dụng một cài đặt rất tối chẳng hạn, màn hình của tôi hoàn toàn trống trong một giây, nhưng điều đó vẫn tốt hơn so với đèn flash trắng sáng.

Xem https://gist.github.com/lacostenycoder/01108de10fe02e2f39d9cceb2457b895

on run {input, parameters}

    set the_application to (path to frontmost application as Unicode text)

  repeat 5 times
    tell application "System Events"
          key code 107
      end tell
  end repeat
  delay 1

    tell application "System Events"

    keystroke "t" using command down
    delay 1

    end tell
  delay 1 
  repeat 5 times
    tell application "System Events"
          key code 113
      end tell
  end repeat

    return input
end run

0

Đẹp một, nó hoạt động trên lịch sử. Điều tốt nhất là lấy mã gốc và thay đổi văn bản thành màu sáng. Mã thứ hai không hoạt động, đây là một:

Trang này giải thích cách thay đổi đèn flash màu bằng cách sử dụng JS

Chrome nhấp nháy màn hình đen khi sử dụng xoay chuyển css


2
Tôi đã cài đặt lại chrome và bây giờ bản sửa lỗi không hoạt động nữa, tôi vẫn có tệp "bảng định kiểu người dùng / custom.css" đã hoạt động trước khi cài đặt, nhưng nó lại nhấp nháy màu trắng và trang lịch sử lại trắng. có ai biết tại sao không?
com.p hiểu được
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.