8

Trong IE 8, chúng tôi có thể đưa ra Công cụ dành cho nhà phát triển. Sau đó, trên đỉnh, có một chế độ trình duyệt:Công cụ dành cho nhà phát triển của IE 8: Chế độ trình duyệt: IE 7, IE 8, nhưng IE 8 "Chế độ xem tương thích" là gì?

IE 7 
IE 8 
IE 8 Compatibility View 

Vì vậy, nếu IE 7 là để buộc trang để được hiển thị như nếu trình duyệt là IE 7, và
IE 8 là để buộc trang để được hiển thị bằng cách sử dụng tiêu chuẩn IE 8 vì nó là,
thì thêm IE 8 "Compatibility View" là gì? Sử dụng nó là gì? Nếu chúng ta đã có IE 7, tại sao cần thêm chế độ này? Chế độ này làm gì mà chế độ IE 7 không thể thực hiện?

Trả lời

6

Sự khác biệt nằm trong chuỗi tác nhân người dùng.

"IE7" mô phỏng chính xác chuỗi tác nhân người dùng của IE7, hiển thị MSIE 7.0. "IE8" sử dụng chuỗi tác nhân người dùng bản địa của IE8 chính xác, hiển thị MSIE 8.0 cũng như Trident/4.0, là phiên bản của công cụ bố cục Trident được sử dụng trong IE8.

IE8-Khả năng tương thích sử dụng chuỗi tác nhân người dùng gốc của trình duyệt, nhưng thay đổi "8.0" thành "7.0".

Vì Trident không có số phiên bản trước IE7, chuỗi IE7 không hiển thị "Trident/x.x". Vì vậy, với chuỗi tác nhân người dùng MSIE 7.0, nếu "Trident/4.0" cũng xuất hiện, bạn biết IE8 đang chạy trong chế độ xem tương thích; nếu "Trident/x.x" KHÔNG ở đó, bạn biết đó là trình duyệt IE7 hoặc IE8 thực trong chế độ IE7 (không phải chế độ tương thích).

Tôi hy vọng lời giải thích của tôi đủ rõ ràng và đây là ví dụ về một số chuỗi tác nhân người dùng bên dưới.

IE7:

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; FDM; MS-RTC EA 2; Tablet PC 2.0; .NET4.0C; .NET4.0E)

IE8:

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; FDM; MS-RTC EA 2; Tablet PC 2.0; .NET4.0C; .NET4.0E)

IE8-Compatibility:

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; FDM; MS-RTC EA 2; Tablet PC 2.0; .NET4.0C; .NET4.0E)

+0

gì là việc sử dụng IE 8 Compatibility View sau đó? Chỉ để có một chuỗi USER_AGENT khác? Ngoài ra, khi trang web cung cấp các trang cho người dùng bằng thẻ meta với Khả năng tương thích với IE7, thì tình huống đó có bị đảo ngược không? (trình duyệt nói rằng đó là IE 8, nhưng trang được hiển thị tại máy khách bằng cách sử dụng công cụ dựng hình không phải là Trident) - vì vậy một lần nữa, việc sử dụng lựa chọn "IE 8 Compatibility View" trong Công cụ dành cho nhà phát triển là gì? –

+0

Trang web có thể phân biệt giữa chế độ IE7 và IE8 trong tương thích dựa trên chuỗi tác nhân người dùng. Các chế độ khác nhau sẽ cho phép bạn xem bất kỳ sự khác biệt nào mà trang web có thể có khi được gửi một trong hai chuỗi. –

+0

Vậy "Chế độ trình duyệt" chỉ kiểm soát chuỗi này được gửi tới máy chủ? Nó không ảnh hưởng đến cách hiển thị nội dung? Chế độ tài liệu đi vào đâu? – felickz

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