2009-12-23 25 views
5

Xem xét các trình duyệt web, hệ điều hành, iphone, mâm xôi, v.v.có an toàn khi sử dụng các ký tự unicode không phải ASCII như ♺ trong các trang web không?

+0

Xác định "an toàn". "Sẽ được hiển thị chính xác" hoặc "sẽ không gây ra bất kỳ lỗ hổng bảo mật nào" hoặc ý của bạn là gì? – jalf

+0

Ý định của tôi là "được hiển thị chính xác". Nhưng liệu có thể một nhân vật có thể gây ra bất kỳ lỗ hổng bảo mật nào không !? – Victor

+0

Chắc chắn, một ký tự 'có thể được sử dụng để tiêm SQL nếu bạn không khử trùng các truy vấn của mình một cách chính xác. – ceejayoz

Trả lời

2

Trong khi "an toàn" - một trong hai bằng cách thiết lập một cách chính xác mã hóa khi cung cấp trang hoặc bằng cách thoát khỏi sử dụng &#xxx; - không phải tất cả người dùng sẽ phải phông chữ có thể hiển thị các ký tự này. Đặc biệt là các ký tự "dingbat" (các ký tự văn bản phương Tây có dấu thường được hỗ trợ ở bất kỳ đâu).

Vì vậy, miễn là bạn đồng ý với một số (tương đối nhỏ) phần trăm người dùng của bạn nhìn thấy một hộp chứ không phải là hình tượng, hãy tiếp tục.

0

Tính năng này an toàn trừ khi bạn đặt loại mã hóa thích hợp cho các trang của mình. Đó là lý do tại sao bạn thấy nhiều ngôn ngữ khác nhau trên thế giới trong các trang html.

1

Nếu bạn xác định mã hóa chính xác trong tiêu đề html, thì thường là an toàn. Tuy nhiên một số thiết bị có thể có vấn đề hiển thị các nhân vật, nhưng nó thực sự phụ thuộc vào nhân vật chính xác.

5

Tùy thuộc vào ký tự và (các) phông chữ. Bạn cần thử nghiệm các ký tự mà bạn quan tâm.

Hãy nhớ rằng CSS cho phép bạn áp dụng nhiều phông chữ cho một khối văn bản: nếu ký tự cụ thể không có sẵn trong phông chữ lựa chọn đầu tiên của bạn, nhưng có sẵn trong phông chữ lựa chọn thứ hai của bạn, trình duyệt sẽ sử dụng phông chữ lựa chọn thứ hai cho nhân vật đó, ngay cả khi nó có thể sử dụng phông chữ lựa chọn đầu tiên cho phần còn lại của văn bản.

(Điều này tất cả giả sử bạn đã thiết lập mã hóa ký tự một cách chính xác.)

2

Hãy xem WGL4. Đó là danh sách các ký tự cần được hiển thị chính xác trên các máy tính Windows và tôi nghĩ điều này có nghĩa là các ký tự đó sẽ được hiển thị chính xác trên phần lớn các thiết bị.

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