HomeFront page of this site StandardsSummary of support for CSS and HTML standardsTkhtml3Unix style manual page for the Tkhtml3 widget.Hv3 Page for the web browser application hv3. Screenshots and starpacks for windows and linux are available here. Hv3 Widget Page for the Hv3 mega-widget, a Snit based pure Tcl widget that adds some commonly requested functionality to Tkhtml3. FFAQtkhtml.tcl.tk FFAQCvstrac Cvstrac is used for project change-log, wiki and bug tracking.

DOM, CSS and HTML Support

Ultimately, Tkhtml3 aims to support those aspects of HTML 4.01 and CSS 2.1 that apply to the parsing and visual rendering of documents. But, as you may have surmised, that is a work in progress. This document describes the current situation in terms of the CSS properties, CSS selectors, HTML attributes and HTML tags supported.

This document currently tracks the CVS version against the CSS 2.1, HTML 4.01 (todo) and DOM (todo) specifications.

CSS Property Support

The tables in this section compare CSS property support in Tkhtml3 with the CSS level 2.1 specification. Of course, there may be bugs in the support of any or all of the properties listed as supported below. If you find a bug, please report it!

Font Properties
font-family Standard families "cursive" and "fantasy" are only available if the underlying font system used by Tk supports them.
font-style Values 'italic' and 'oblique' map to "-slant italic" and 'normal' maps to "-slant roman".
font-variant No support.
font-weight Values 'bold', 'bolder' and numbers greater than 550 map to "-weight bold", everything else maps to "-weight normal".
font-size
font Supported except for font-variant values ('small-caps').
Color and Background Properties
color
background-color
background-image
background-repeat
background-attachment
background-position
background
Text Properties
word-spacing No support.
letter-spacing No support.
text-decoration Value 'blink' is not supported. Also, multiple decorations (e.g. an underline and an overline) are not supported.
vertical-align
text-transform No support.
text-align
text-indent
white-space
Box Properties
margin Properties 'margin-top', 'margin-right', 'margin-bottom' and 'margin-left' are also supported.
padding Properties 'padding-top', 'padding-right', 'padding-bottom' and 'padding-left' are also supported.
border-width
border-style All border styles apart from 'none' (i.e. 'dashed', 'groove' etc.) are currently rendered as solid lines. This is legal according to the spec, but it's sub-optimal.
border-color
border Properties 'border-top', 'border-right', 'border-bottom' and 'border-left' are also supported. Also 'border-top-color', 'border-left-width' and other such variants.
Visual Rendering Properties
display Not all values are supported. Currently supported values are 'inline', 'block', 'list-item', 'table', 'table-row', 'table-cell', 'none' and 'inherit'. The following are handled as 'block': 'run-in', 'inline-block', 'table-caption'.
width
height
float
clear
line-height
min-width Support is a bit patchy. Most cases work.
max-width Support is a bit patchy. Most cases work.
min-height Support is a bit patchy. Most cases work.
max-height Support is a bit patchy. Most cases work.
position Positioning modes 'static', 'relative', 'fixed' and 'absolute' are all supported.
left
right
top
bottom
z-index
unicode-bidi Tkhtml3 does not yet support bi-directional text. So the properties "unicode-bidi" and "direction" are both ignored.
direction No support.
Visual Effects Properties
overflow
clip No support.
visibility
Table Properties
border-collapse No support.
border-spacing
caption-side No support.
empty-cells No support.
table-layout No support.
User Interface Properties
cursor Only enumerated values are supported. Tkhtml3 doesn't actually do anything with this property, but it is available for the applications use.
outline
outline-width
outline-color
outline-style
Generated Content Properties
list-style-type
list-style-image
list-style-position
list-style
content String, attr(), counter() and counters() values work. There is no support for url(), or the keywords for automatic quotes generation.
counter-increment
counter-reset
quotes No support.

The following CSS 2.1 properties are currently considered to be outside of Tkhtml3's scope, as they only apply to aural or paged document rendering:

  • azimuth
  • cue-after
  • cue-before
  • cue
  • elevation
  • pause-after
  • pause-before
  • pause
  • pitch-range
  • pitch
  • play-during
  • richness
  • speak-header
  • speak-numeral
  • speak-punctuation
  • speak
  • speech-rate
  • stress
  • voice-family
  • volume
  • orphans
  • page-break-after
  • page-break-before
  • page-break-inside
  • widows

CSS Selector Support

Essentially, all CSS 2.1 selectors are supported except for the following pseudo-elements:

  • :first-letter
  • :first-line
  • :lang