Content deleted Content added
Added inline citations to the 'WYSIWYG HTML editors' section to verify claims regarding functionality, technical implementation, core criticisms (browser rendering, semantics, CMS conflict), and alternative paradigms (WYSIWYM), per article maintenance tags. |
No edit summary |
||
(One intermediate revision by one other user not shown) | |||
Line 1:
{{Short description|Software for editing HTML}}{{Use dmy dates|date=December 2021}}{{Multiple issues|
{{Original research|date=April 2024}}
{{More footnotes needed|date=April 2024}}
{{more citations needed|date=August 2019}}
}}{{HTML}}
An '''HTML editor''' is a program used for editing HTML, the markup of a web page. Although the HTML markup in a web page can be controlled with any text editor, specialized HTML editors can offer convenience, added functionality, and organisation. For example, many HTML editors handle not only HTML, but also related technologies such as CSS, XML and [[JavaScript]] , or ECMAScript. In some cases, they also manage communication with remote web servers via FTP and WebDAV, and version control systems such as Subversion or Git. Many word processing, graphic design, and page layout programs that are not dedicated to [[web design]], such as Microsoft Word or Quark XPress, also have the ability to function as HTML editors.
Line 23 ⟶ 20:
{{unreferenced section|date=September 2016}}
[[Image:W3c amaya 10 fullmode enwiki xfce4therapy.png|thumb|250px|[[Amaya (web browser)|Amaya]] 10 HTML editor]]
WYSIWYG HTML editors provide an editing interface that resembles how the page will be displayed in a [[web browser]]. Because using a WYSIWYG editor may not require any HTML knowledge, they are often easier for an inexperienced computer user to get started with.
The WYSIWYG view is achieved by embedding a [[Browser engine|layout engine]]. This may be custom-written or based on one used in a web browser.
[[WYSIWYM]] (what you see is what you ''mean'') is an alternative paradigm to WYSIWYG editors. Instead of focusing on the format or presentation of the document, it preserves the intended meaning of each element.
=== Difficulties in achieving WYSIWYG ===
A given HTML document will have an inconsistent appearance on various [[Computing platform|platforms]] and computers for several reasons:
;Different browsers and applications will render the same markup differently.
:The same page may display slightly differently, for example, in [[Google Chrome|Chrome]], [[Safari (web browser)|Safari]], [[Microsoft Edge|Edge]], [[Internet Explorer]] and [[Firefox]] on a high-resolution screen, but it will look very different in the perfectly valid text-only [[Lynx (browser)|Lynx]] browser. It needs to be rendered differently again on a [[Personal digital assistant|PDA]], an [[Digital television|internet-enabled television]] , and on a [[mobile phone]]. Usability in a [[Voice browser|speech]] or [[braille]] browser, or via a [[Screen reader|screen-reader]] working with a conventional browser, will place demands on entirely different{{clarify|date=October 2020}} aspects of the underlying HTML. All an author can do is suggest an appearance.
;Web browsers, like all computer software, have [[computer bug|bugs]].
:They may not conform to current [[Web standards|standards]]. It is hopeless to try to design Web pages around all of the common browsers' current bugs: each time a new version of each browser comes out, a significant proportion of the [[World Wide Web]] would need re-coding to suit the new bugs and the new fixes. It is generally considered much wiser to design to standards, staying away from 'bleeding edge' features until they settle down, and then wait for the browser developers to catch up to your pages, rather than the other way round.<ref>{{cite web|url=http://www.w3.org/People/Bos/DesignGuide/designguide.html |title=An essay on W3C's design principles |publisher=W3C |access-date=2013-10-23 |date= 6 Mar 2003 |first=Bert |last=Bos}}</ref> For instance, no one can argue that CSS is still 'cutting edge' as there is now widespread support available in common browsers for all the major features,<ref>{{cite web|url=http://www.w3.org/Style/CSS/#browsers |title=Cascading Style Sheets |publisher=W3C |access-date=2013-10-23}}</ref> even if many WYSIWYG and other editors have not yet entirely caught up.<ref>{{cite web|url=http://www.w3.org/Style/CSS/#editors |title=Cascading Style Sheets |publisher=W3C |access-date=2013-10-23}}</ref>
;A single visual style can represent multiple semantic meanings
:Semantic meaning, derived from the underlying structure of the HTML document, is important for search engines and also for various accessibility tools. On paper, we can tell from context and experience whether bold text represents a title, emphasis, or something else. But it is very difficult to convey this distinction in a WYSIWYG editor. Simply making a piece of text bold in a WYSIWYG editor is not sufficient to tell the reader *why* the text is bold – what the boldness represents semantically.
;Modern websites are rarely constructed in a way that makes WYSIWYG useful
:Modern websites typically use a [[content management system]] or some other [[template processor]]-based means of constructing pages on the fly using content stored in a database. Individual pages are never stored in a filesystem as they may be designed and edited in a WYSIWYG editor, thus some form of abstracted template-based layout is inevitable, invalidating one of the main benefits of using a WYSIWYG editor.
==Valid HTML markup==
|