2013-08-31 70 views
14

Khi mã hóa trang web của tôi, tôi lưu tài liệu HTML và CSS rồi làm mới trình duyệt của mình để xem các thay đổi. Tuy nhiên khi tôi làm mới các thay đổi HTML được nhìn thấy nhưng thay đổi CSS thì không. Thay vào đó những gì tôi sẽ phải làm là đóng cửa sổ và mở lại nó để xem các thay đổi CSS của tôi.Tại sao CSS của tôi không cập nhật trong trình duyệt web?

Bất kỳ ý tưởng nào tại sao tôi không thể làm mới và xem thay đổi CSS thay vì đóng cửa sổ và mở lại?

+0

Bạn có đang chạy máy chủ của riêng mình hay chỉ thực thi tệp HTML với trình duyệt (ví dụ: kéo tệp vào biểu tượng trình duyệt). –

+0

Điều đó không nên. Bạn đang dùng trình duyệt nào. Tất cả những gì tôi có thể nghĩ là có sự cố với bộ nhớ cache của trình duyệt của bạn. Tôi khuyên bạn nên xóa bộ nhớ cache của trình duyệt và sau đó khởi động lại trình duyệt của bạn và xem có giải quyết được sự cố của bạn hay không. Như @ErikReppen đã hỏi, bạn có đang sử dụng máy chủ hay chỉ mở tệp. Nếu nó là cựu tôi sẽ khuyên bạn nên sử dụng một trang web lưu trữ web miễn phí 000Webhost hoặc tạo ra một môi trường địa phương với một cái gì đó như xampp –

+0

bạn đã thử xóa bộ nhớ cache của trình duyệt và tất cả các cookie. Một số máy chủ lưu trữ các phiên bản CSS trước khi đặt chúng trực tiếp. – benny

Trả lời

17

Hãy thử một "cứng" làm mới của trình duyệt của bạn ...

http://en.wikipedia.org/wiki/Wikipedia:Bypass_your_cache

Ý tưởng là để xóa bộ nhớ đệm của trình duyệt. Các trình duyệt khác nhau xử lý điều này một cách khác nhau và bài viết wiki này có một hướng dẫn tốt cho mỗi trình duyệt chính về cách thực hiện điều này.

Hoặc, bạn có thể xóa bộ nhớ cache của trình duyệt, cũng được đề cập trong bài viết wiki.

+1

Cảm ơn! Tôi đoán điều này hoạt động tốt nhất! Command + R cho Mac trên Chrome. –

+0

tuyệt vời, tiết kiệm thời gian của tôi. – RainCast

+4

Trong chrome, bạn chỉ cần nhấn: Ctrl + Shift + R – PlayHardGoPro

14

Tôi nghĩ rằng đó là sự cố bộ nhớ cache.

Làm thế nào để xác định vị trí các vấn đề

Nếu bạn đang sử dụng Chrom hoặc Firefox hay Safari, chỉ cần nhấp chuột phải vào trang và chọn inspect element, và chọn network tab.

Bây giờ làm mới trang của bạn như bình thường, và bạn sẽ thấy tất cả các yêu cầu http như thế này:

Nếu tình trạng tập tin css là 304, có nghĩa là trình duyệt yêu cầu máy chủ file css, và máy chủ nói: "không, bạn không cần phải hỏi tôi, tôi đã cung cấp cho bạn tệp css trước đó, nó đã không thay đổi. "

Nếu trạng thái tệp css là 200, nhưng kích thước là from cache, điều đó có nghĩa là trình duyệt thậm chí không yêu cầu máy chủ cho tệp, trình duyệt cho rằng tệp này có tệp mới nhất.

Tôi nghĩ bạn đang ở trong tình trạng thứ hai (200 từ bộ nhớ cache).

Làm thế nào để giải quyết này:

  1. bạn luôn có thể xóa bộ nhớ cache brwoser để xem các thay đổi. Hoặc bạn có thể vô hiệu hóa bộ nhớ cache của trình duyệt cho mục đích gỡ lỗi.

    Nhưng bạn có thể không phải lúc nào cho khách truy cập của bạn để xóa bộ nhớ cache, vì vậy phương pháp thứ hai:

  2. nếu bạn đang sử dụng PHP hoặc bất cứ điều gì như là ngôn ngữ máy chủ, nối thêm một chuỗi truy vấn đến tên tập tin css:

    < link rel = stylesheet " " type = " text/css " href = " http://www.example.com/style.css?ts=<?=time()?>&quot;/>

    99% thời gian, tính năng này sẽ hoạt động.

  3. nếu đó là trang html tĩnh, bạn có thể thay đổi chuỗi truy vấn css theo cách thủ công (hoặc thậm chí tên tệp css, nếu bạn muốn).

+0

Mọi thứ có vẻ ổn trong yếu tố thanh tra. Trạng thái văn bản tệp cho biết "Thành công". Có lẽ nó đang hoạt động? –

+0

Bạn có thể đăng liên kết của trang này không? Trạng thái văn bản phải là mã http. – Yuguo

+0

đang ở trên phần tử kiểm tra> tab mạng và nhấn cmd + r đã làm thủ thuật –

0

Tùy thuộc vào trình duyệt, đó có thể là sự cố lưu vào bộ nhớ cache.

Có thể có cài đặt trong trình duyệt đang ngăn không cho Cache cập nhật.

Bạn đã thử đặt lại trình duyệt của mình về mặc định chưa?

Lý do tôi hỏi, Firefox và Chrome có xử lý theo cách này không.

Nếu bạn xóa bộ nhớ cache + cookie trong Firefox, nó có thể không có hiệu lực cho đến khi bạn đóng tất cả cửa sổ Trình duyệt.

Chrome sẽ làm mới bộ nhớ cache với từng tab riêng lẻ.

Tôi khuyên bạn nên cài đặt lại trình duyệt của mình vì đây chắc chắn là vấn đề địa phương nhưng không liên kết với chính css.

Các vấn đề liên quan