Produces XHTML 1.0 Strict.
- data Html
- data HtmlAttr
- class HTML a where
- toHtml :: a -> Html
- toHtmlFromList :: [a] -> Html
- class ADDATTRS a where
- (<<) :: HTML a => (Html -> b) -> a -> b
- concatHtml :: HTML a => [a] -> Html
- (+++) :: (HTML a, HTML b) => a -> b -> Html
- noHtml :: Html
- isNoHtml :: Html -> Bool
- tag :: String -> Html -> Html
- itag :: String -> Html
- emptyAttr :: String -> HtmlAttr
- intAttr :: String -> Int -> HtmlAttr
- strAttr :: String -> String -> HtmlAttr
- htmlAttr :: String -> Html -> HtmlAttr
- primHtml :: String -> Html
- stringToHtmlString :: String -> String
- docType :: [Char]
- showHtml :: HTML html => html -> String
- renderHtml :: HTML html => html -> String
- renderHtmlWithLanguage :: HTML html => String -> html -> String
- prettyHtml :: HTML html => html -> String
- showHtmlFragment :: HTML html => html -> String
- renderHtmlFragment :: HTML html => html -> String
- prettyHtmlFragment :: HTML html => html -> String
- abbr :: Html -> Html
- acronym :: Html -> Html
- address :: Html -> Html
- anchor :: Html -> Html
- area :: Html
- bdo :: Html -> Html
- big :: Html -> Html
- blockquote :: Html -> Html
- body :: Html -> Html
- bold :: Html -> Html
- br :: Html
- button :: Html -> Html
- caption :: Html -> Html
- cite :: Html -> Html
- col :: Html -> Html
- colgroup :: Html -> Html
- del :: Html -> Html
- ddef :: Html -> Html
- define :: Html -> Html
- dlist :: Html -> Html
- dterm :: Html -> Html
- emphasize :: Html -> Html
- fieldset :: Html -> Html
- form :: Html -> Html
- h1 :: Html -> Html
- h2 :: Html -> Html
- h3 :: Html -> Html
- h4 :: Html -> Html
- h5 :: Html -> Html
- h6 :: Html -> Html
- header :: Html -> Html
- hr :: Html
- image :: Html
- input :: Html
- ins :: Html -> Html
- italics :: Html -> Html
- keyboard :: Html -> Html
- label :: Html -> Html
- legend :: Html -> Html
- li :: Html -> Html
- meta :: Html
- noscript :: Html -> Html
- object :: Html -> Html
- olist :: Html -> Html
- optgroup :: Html -> Html
- option :: Html -> Html
- paragraph :: Html -> Html
- param :: Html
- pre :: Html -> Html
- quote :: Html -> Html
- sample :: Html -> Html
- script :: Html -> Html
- select :: Html -> Html
- small :: Html -> Html
- strong :: Html -> Html
- style :: Html -> Html
- sub :: Html -> Html
- sup :: Html -> Html
- table :: Html -> Html
- tbody :: Html -> Html
- td :: Html -> Html
- textarea :: Html -> Html
- tfoot :: Html -> Html
- th :: Html -> Html
- thead :: Html -> Html
- thebase :: Html
- thecode :: Html -> Html
- thediv :: Html -> Html
- thehtml :: Html -> Html
- thelink :: Html -> Html
- themap :: Html -> Html
- thespan :: Html -> Html
- thetitle :: Html -> Html
- tr :: Html -> Html
- tt :: Html -> Html
- ulist :: Html -> Html
- variable :: Html -> Html
- action :: String -> HtmlAttr
- align :: String -> HtmlAttr
- alt :: String -> HtmlAttr
- altcode :: String -> HtmlAttr
- archive :: String -> HtmlAttr
- base :: String -> HtmlAttr
- border :: Int -> HtmlAttr
- bordercolor :: String -> HtmlAttr
- cellpadding :: Int -> HtmlAttr
- cellspacing :: Int -> HtmlAttr
- checked :: HtmlAttr
- codebase :: String -> HtmlAttr
- cols :: String -> HtmlAttr
- colspan :: Int -> HtmlAttr
- content :: String -> HtmlAttr
- coords :: String -> HtmlAttr
- disabled :: HtmlAttr
- enctype :: String -> HtmlAttr
- height :: String -> HtmlAttr
- href :: String -> HtmlAttr
- hreflang :: String -> HtmlAttr
- httpequiv :: String -> HtmlAttr
- identifier :: String -> HtmlAttr
- ismap :: HtmlAttr
- lang :: String -> HtmlAttr
- maxlength :: Int -> HtmlAttr
- method :: String -> HtmlAttr
- multiple :: HtmlAttr
- name :: String -> HtmlAttr
- nohref :: HtmlAttr
- rel :: String -> HtmlAttr
- rev :: String -> HtmlAttr
- rows :: String -> HtmlAttr
- rowspan :: Int -> HtmlAttr
- rules :: String -> HtmlAttr
- selected :: HtmlAttr
- shape :: String -> HtmlAttr
- size :: String -> HtmlAttr
- src :: String -> HtmlAttr
- theclass :: String -> HtmlAttr
- thefor :: String -> HtmlAttr
- thestyle :: String -> HtmlAttr
- thetype :: String -> HtmlAttr
- title :: String -> HtmlAttr
- usemap :: String -> HtmlAttr
- valign :: String -> HtmlAttr
- value :: String -> HtmlAttr
- width :: String -> HtmlAttr
- stringToHtml :: String -> Html
- lineToHtml :: String -> Html
- linesToHtml :: [String] -> Html
- primHtmlChar :: String -> Html
- copyright :: Html
- spaceHtml :: Html
- bullet :: Html
- p :: Html -> Html
- type URL = String
- data HotLink = HotLink {}
- hotlink :: URL -> Html -> HotLink
- ordList :: HTML a => [a] -> Html
- unordList :: HTML a => [a] -> Html
- defList :: (HTML a, HTML b) => [(a, b)] -> Html
- widget :: String -> String -> [HtmlAttr] -> Html
- checkbox :: String -> String -> Html
- hidden :: String -> String -> Html
- radio :: String -> String -> Html
- reset :: String -> String -> Html
- submit :: String -> String -> Html
- password :: String -> Html
- textfield :: String -> Html
- afile :: String -> Html
- clickmap :: String -> Html
- menu :: String -> [Html] -> Html
- gui :: String -> Html -> Html
Data types
Classes
Primitives and basic combinators
concatHtml :: HTML a => [a] -> HtmlSource
(+++) :: (HTML a, HTML b) => a -> b -> HtmlSource
Create a piece of HTML which is the concatenation of two things which can be made into HTML.
Constructs an element with a custom name.
primHtml :: String -> HtmlSource
This is not processed for special chars.
use stringToHtml or lineToHtml instead, for user strings,
because they understand special chars, like
.
<
stringToHtmlString :: String -> StringSource
Processing Strings into Html friendly things.
Rendering
showHtml :: HTML html => html -> StringSource
The DOCTYPE
for XHTML 1.0 Strict.
Output the HTML without adding newlines or spaces within the markup. This should be the most time and space efficient way to render HTML, though the ouput is quite unreadable.
renderHtml :: HTML html => html -> StringSource
Outputs indented HTML. Because space matters in HTML, the output is quite messy.
:: HTML html | |
=> String | The code of the dominant language of the webpage. |
-> html | All the |
-> String |
Outputs indented XHTML. Because space matters in HTML, the output is quite messy.
prettyHtml :: HTML html => html -> StringSource
Outputs indented HTML, with indentation inside elements.
This can change the meaning of the HTML document, and
is mostly useful for debugging the HTML output.
The implementation is inefficient, and you are normally
better off using showHtml
or renderHtml
.
showHtmlFragment :: HTML html => html -> StringSource
Render a piece of HTML without adding a DOCTYPE declaration or root element. Does not add any extra whitespace.
renderHtmlFragment :: HTML html => html -> StringSource
Render a piece of indented HTML without adding a DOCTYPE declaration or root element. Only adds whitespace where it does not change the meaning of the document.
prettyHtmlFragment :: HTML html => html -> StringSource
Render a piece of indented HTML without adding a DOCTYPE declaration
or a root element.
The indentation is done inside elements.
This can change the meaning of the HTML document, and
is mostly useful for debugging the HTML output.
The implementation is inefficient, and you are normally
better off using showHtmlFragment
or renderHtmlFragment
.
Elements in XHTML Strict
blockquote :: Html -> HtmlSource
Attributes in XHTML Strict
bordercolor :: String -> HtmlAttrSource
cellpadding :: Int -> HtmlAttrSource
cellspacing :: Int -> HtmlAttrSource
identifier :: String -> HtmlAttrSource
Converting strings to HTML
stringToHtml :: String -> HtmlSource
lineToHtml :: String -> HtmlSource
This converts a string, but keeps spaces as non-line-breakable.
linesToHtml :: [String] -> HtmlSource
This converts a string, but keeps spaces as non-line-breakable, and adds line breaks between each of the strings in the input list.
Html abbreviations
primHtmlChar :: String -> HtmlSource
Hotlinks
HotLink | |
|