Setting language preferences in a browser. Background When your browser pulls a document from the Web, it sends a request to the server where the information is stored.
This is known as an HTTP request. Language tags in HTML and XML. Intended audience: XHTML/HTML coders (using editors or scripting), script developers (PHP, JSP, etc.), schema developers (DTDs, XML Schema, RelaxNG, etc.), XSLT developers, Web project managers, standards implementers, and anyone who needs an overview of how language tags are constructed using BCP47.
Updated Overview. Language on the Web. Content authors need to know how to declare the language of a document or range of text in the Web technology they are dealing with.
HTML uses the lang attribute, but there may be other markup. For example, most XML-based formats, such as XHTML, SVG, SSML, etc. make use of the xml:lang attribute defined by the XML specification. Handling character encodings in HTML and CSS. Intended audience: HTML and CSS content authors.
This material is applicable whether you create documents in an editor, or via scripting. This tutorial gathers together and organizes pointers to articles that, taken together, help you understand how to handle the essential aspects of authoring HTML and CSS related to characters and character encodings. In a nutshell This section is for people in a hurry who just want to know the key recommendations from the tutorial. If you don't understand something, or if you want more detail, read the rest of the tutorial.
Save your pages as UTF-8. Always declare the encoding of your document. You can use @charset or HTTP headers to declare the encoding of your style sheet, but you only need to do so if your style sheet contains non-ASCII characters and, for some reason, you can't rely on the encoding of the HTML and the associated style sheet to be the same. Avoid using character escapes, except for invisible or ambiguous characters. Internationalization Quick Tips for the Web. Encoding.
Use the UTF-8 (Unicode) character encoding for content, databases, etc. Always declare the encoding. Declaring language in HTML. If you want to create metadata that describes the language of the intended audience of a page, rather than the language of a specific range of text, do so by getting the server to send the information in the HTTP Content-Language header.
If your intended audience speaks more than one language, the HTTP header allows you to use a comma-separated list of languages. Here is an example of an HTTP header that declares the resource to be a mixture of English, Hindi and Punjabi: Content-Language: en, hi, pa Note that this approach is not effective if your page is accessed from a hard drive, disk or other non-server based location. There is currently no widely recognized way of using this kind of metadata inside the page. In the past many people used a meta element with the http-equiv attribute set to Content-Language. Normalization in HTML and CSS. Intended audience: XHTML/HTML coders (using editors or scripting), script developers (PHP, JSP, etc.), CSS coders, Web project managers, and anyone who is unfamiliar with Unicode normalization and how it can affect the success of HTML and CSS authoring.
Question What are normalization forms, and why do I need to know about them when creating HTML and CSS content? Answer Normalization is something you need to be aware of if you are authoring HTML pages with CSS style sheets in UTF-8 (or any other Unicode encoding), particularly if you are dealing with text in a script that uses accents or other diacritics. What are normalization forms? In Unicode it is possible to produce the same text with different sequences of characters. Precomposed. The byte-order mark (BOM) in HTML. Answer What is a byte-order mark?
At the beginning of a page that uses a Unicode character encoding you may find some bytes that represent the Unicode code point U+FEFF BYTE ORDER MARK (abbreviated as The name BYTE ORDER MARK is an alias for the original character name ZERO WIDTH NO-BREAK SPACE (ZWNBSP). With the introduction of U+2060 WORD JOINER, there's no longer a need to ever use U+FEFF for its ZWNSP effect, so from that point on, and with the availability of a formal alias, the name ZERO WIDTH NO-BREAK SPACE is no longer helpful, and we will use the alias here. Declaring character encodings in HTML. You should always specify the encoding used for an HTML or XML page. If you don't, you risk that characters in your content are incorrectly interpreted.
Choosing & applying a character encoding. Intended audience: HTML coders (using editors or scripting), script developers (PHP, JSP, etc.), CSS coders, Web project managers, and anyone who is new to character encodings and needs an introduction to how to choose and apply character encodings. Updated Question Which character encoding should I use for my content, and how do I apply it to my content?
Content is composed of a sequence of characters. Characters represent letters of the alphabet, punctuation, etc. WAI Web Accessibility Tutorials. Easy Checks - A First Review of Web Accessibility. This page helps you assess the accessibility of a web page. With these simple steps, you can get an idea whether or not accessibility is addressed in even the most basic way. These checks cover just a few accessibility issues and are designed to be quick and easy, rather than definitive.
A web page could seem to pass these checks, yet still have accessibility barriers. More robust evaluation is needed to evaluate all issues comprehensively. Additional evaluation guidance is available from: This page provides checks for the following specific aspects of a web page. Using these Easy Checks. C cheatsheet. The encoding used for an HTML page that contains a form should support all the characters needed to enter data into that form.
This is particularly important if users are likely to enter information in multiple languages. Databases and scripts that receive data from forms on pages in multiple languages must also be able to support the characters for all those languages simultaneously. The simplest way to enable this is to use Unicode for both pages containing forms and all back-end processing and storage. In such a scenario the user can fill in data in whatever language and script they need to.