Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 History  



1.1  Origins  





1.2  Re-write and improvement  





1.3  Other modules  





1.4  Sunsetting  







2 Standards compliance  





3 Descendants  





4 See also  





5 References  





6 External links  














KHTML






العربية
Azərbaycanca
Беларуская
Boarisch
Català
Čeština
Deutsch
Eesti
Español
فارسی
Français
Galego

Bahasa Indonesia
Italiano
Lietuvių
Magyar
Nederlands

Polski
Português
Русский
Slovenčina
Suomi
Türkçe
Українська

 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


KHTML
Developer(s)KDE
Stable release5.111.0 (September 10, 2023; 9 months ago (2023-09-10)) [±][1]
Repositoryinvent.kde.org/frameworks/khtml
Written inC++[2]
TypeBrowser engine
LicenseGNU Lesser General Public License

KHTML is a discontinued[3] browser engine that was developed by the KDE project. It originated as the engine of the Konqueror browser in the late 1990s, but active development ceased in 2016.[1][4] It was officially discontinued in 2023.[3]

Built on the KParts framework and written in C++, KHTML had relatively good support for Web standards during its prime. Engines forked from KHTML are used by most of the browsers that are widely used today, including WebKit (Safari) and Blink (Google Chrome, Chromium, Microsoft Edge, Opera, Vivaldi and Brave).

History[edit]

Origins[edit]

KHTML was preceded by an earlier engine called khtmlworthe KDE HTML Widget, developed by Torben Weis and Martin Jones,[5][6] which implemented support for HTML 3.2, HTTP 1.0, and HTML frames, but not the DOM, CSS, or JavaScript.

KHTML itself came into existence on November 4, 1998,[5] as a fork of the khtmlw library, with some slight refactoring and the addition of Unicode support and changes to support the move to Qt 2. Waldo Bastian[7] was among those who did the work of creating that early version of KHTML.[5]

Re-write and improvement[edit]

The real work on KHTML actually started between May and October 1999, with the realization that the choice facing the project was "either do a significant effort to move KHTML forward or to use Mozilla"[5] and with adding support for JavaScript as the highest priority. So in May 1999, Lars Knoll[8] began doing research with an eye toward implementing the DOM specification, finally announcing[9] on August 16, 1999 that he had checked in[10] what amounted to a complete rewrite of the KHTML library—changing KHTML to use the standard DOM as its internal document representation. That in turn allowed the beginnings of JavaScript support to be added in October 1999,[5] followed shortly afterwards with the integration of KJSbyHarri Porten.

In the closing months of 1999 and first few months of 2000, Knoll did further work with Antti Koivisto and Dirk Mueller[5][11][12] to add CSS support and to refine and stabilize the KHTML architecture,[5] with most of that work being completed by March 2000. Among other things, those changes enabled KHTML to become the second browser after Internet Explorer to correctly support Hebrew and Arabic and languages written right-to-left[5]—before Mozilla had such support.

KDE 2.0 was the first KDE release (on October 23, 2000) to include KHTML[13] (as the rendering engine of the new Konqueror file and web browser, which replaced the monolithic KDE File Manager).

Other modules[edit]

KSVG was first developed in 2001 by Nikolas Zimmermann and Rob Buis; however, by 2003, it was decided to fork the then-current KSVG implementation into two new projects: KDOM/KSVG2 (to improve the state of DOM rendering in KHTML underneath a more formidable SVG 1.0 render state) and Kcanvas (to abstract any rendering done within khtml/ksvg2 in a single shared library, with multiple backends for it, e.g., Cairo/Qt, etc.).[14]

KSVG2 is also a part of WebKit.[15]

Sunsetting[edit]

KHTML was scheduled to be removed in KDE Frameworks 6.[4] Active development ended in 2016, just the necessary maintenance to work with updates to Frameworks 5.[1] It was officially discontinued in 2023.[3]

Standards compliance[edit]

The following standards are supported by the KHTML engine:

  • HTML 5 support
  • CSS1
  • CSS 2.1 (screen and paged media)
  • CSS 3 Selectors (fully as of KDE 3.5.6[16])
  • CSS 3 Other (multiple backgrounds, box-sizing and text-shadow)
  • PNG, MNG, JPEG, GIF graphic formats
  • DOM 1, 2 and partially 3
  • ECMA-262/JavaScript 1.5
  • Partial Scalable Vector Graphics support
  • Descendants[edit]

    KHTML and KJS were adopted by Apple in 2002 for use in the Safari web browser. Apple publishes the source code for their fork of the KHTML engine, called WebKit. In 2013, Google began development on a fork of WebKit, called Blink.[17]

    See also[edit]

    References[edit]

    1. ^ a b c "KHTML commit log". KDE Invent. Retrieved 2021-09-14.
  • ^ "KHTML repository analytics". invent.kde.org. Retrieved 2020-08-15.
  • ^ a b c "KHTML repository". GitHub. Retrieved 5 May 2023. Removed for KF6, the 'kf5' branch contains the last maintained state.
  • ^ a b "Port Konqueror away from KHTML". phabricator.kde.org. Retrieved 2023-05-05.
  • ^ a b c d e f g h "Lars Knoll and George Staikos: From KDE to WebKit". YouTube. Retrieved 1 September 2019.
  • ^ "KDE/kde1-kdelibs/khtmlw". GitHub. Retrieved 2020-01-23.
  • ^ "Waldo Bastian | Behind KDE". Behindkde.org. Retrieved 1 September 2019.
  • ^ "Lars Knoll | Behind KDE". Behindkde.org. Retrieved 1 September 2019.
  • ^ "'changes in KHTML' - MARC". Marc.info. Retrieved 1 September 2019.
  • ^ "'khtml_to_dom: kdelibs/khtml' - MARC". Marc.info. Retrieved 1 September 2019.
  • ^ "WebKit Team – WebKit". Trac.webkit.org. Retrieved 1 September 2019.
  • ^ "Dirk Mueller | Behind KDE". Behindkde.org. Retrieved 1 September 2019.
  • ^ "Lars Knoll and George Staikos: From KDE to WebKit". YouTube. Retrieved 1 September 2019.
  • ^ [1][permanent dead link]
  • ^ "The WebKit Open Source Project". Webkit.org. 7 November 2015. Retrieved 1 September 2019.
  • ^ "KDE 3.5.6 Changelog". K Desktop Environment.
  • ^ "Blink: A rendering engine for the Chromium project". Blog.chromium.org. Retrieved 1 September 2019.
  • External links[edit]


    Retrieved from "https://en.wikipedia.org/w/index.php?title=KHTML&oldid=1223270391"

    Categories: 
    1999 software
    Free layout engines
    Free software programmed in C++
    KDE Frameworks
    KDE Platform
    Hidden categories: 
    All articles with dead external links
    Articles with dead external links from March 2018
    Articles with permanently dead external links
    Articles with short description
    Short description matches Wikidata
     



    This page was last edited on 11 May 2024, at 00:01 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki