Firefox not displaying ® correctly on specific website
For some reason Firefox is not showing the registered trademark ® correctly on my website. It is coded correctly and shows as ® when i perform my HTML editing. But when I look at it as a customer using Firefox it changes to Ž but only in certain parts of the webpage. It does display properly on all other browsers though (Chrome, Edge, Opera, Safari, Explorer) Firefox seems to be the only browser not displaying it properly. See screen shots below I used Opera as an example. I'm not sure if this is a Firefox problem or something that I can fix. Any help would be greatly appreciated. Thank you
글쓴이 remo0032 수정일시
선택된 해결법
cor-el said
There are three cases on this webpage where that '®' (0xae;) character is present in the page source. There are two 'LEGO®' cases in the sidebar at the left apart from the one in the screenshot. This is a problem with the server that doesn't seem to specify the encoding and this makes Firefox guess the encoding as "ISO-8859-2" as is shown in "Page Info -> General". In this encoding 0xAE is represented as 'Ž' (0x017d) and Firefox changes the '®' accordingly. When the page loads then there is a short flash where I see the '®' and then Firefox changes it to 'Ž'. You will have to make the server send the file as Unicode (utf-8) to make this work properly.Web console: The character encoding of the document was not declared, and the encoding was guessable from content only late. This caused the document to be reloaded. The character encoding needs to be declared in the Content-Type HTTP header, using a meta tag, or using a byte order mark.
- content-type: text/html => content-type: text/html; charset=UTF-8
Thank you by adding that code to the header my problem has been fixed.
문맥에 따라 이 답변을 읽어주세요 👍 0모든 댓글 (3)
There are three cases on this webpage where that '®' (0xae;) character is present in the page source. There are two 'LEGO®' cases in the sidebar at the left apart from the one in the screenshot.
This is a problem with the server that doesn't seem to specify the encoding and this makes Firefox guess the encoding as "ISO-8859-2" as is shown in "Page Info -> General". In this encoding 0xAE is represented as 'Ž' (0x017d) and Firefox changes the '®' accordingly. When the page loads then there is a short flash where I see the '®' and then Firefox changes it to 'Ž'. You will have to make the server send the file as Unicode (utf-8) to make this work properly.
- content-type: text/html => content-type: text/html; charset=UTF-8
Web console: The character encoding of the document was not declared, and the encoding was guessable from content only late. This caused the document to be reloaded. The character encoding needs to be declared in the Content-Type HTTP header, using a meta tag, or using a byte order mark.
글쓴이 cor-el 수정일시
The short answer is that the server doesn't send the text encoding (should be utf-8) and that Firefox tries to be smart and guess the encoding (for some reason thinks it is ISO-8859-2) when it encounters the '®' (0xae;) and changes the 0xae; for this encoding to 'Ž' (0x017d).
선택된 해결법
cor-el said
There are three cases on this webpage where that '®' (0xae;) character is present in the page source. There are two 'LEGO®' cases in the sidebar at the left apart from the one in the screenshot. This is a problem with the server that doesn't seem to specify the encoding and this makes Firefox guess the encoding as "ISO-8859-2" as is shown in "Page Info -> General". In this encoding 0xAE is represented as 'Ž' (0x017d) and Firefox changes the '®' accordingly. When the page loads then there is a short flash where I see the '®' and then Firefox changes it to 'Ž'. You will have to make the server send the file as Unicode (utf-8) to make this work properly.Web console: The character encoding of the document was not declared, and the encoding was guessable from content only late. This caused the document to be reloaded. The character encoding needs to be declared in the Content-Type HTTP header, using a meta tag, or using a byte order mark.
- content-type: text/html => content-type: text/html; charset=UTF-8
Thank you by adding that code to the header my problem has been fixed.