| 1 | = Using HTML in Wiki Text = |
| 2 | |
| 3 | Trac supports inserting HTML into any wiki context, accomplished using the HTML [wiki:WikiProcessors WikiProcessor]. |
| 4 | |
| 5 | HTML support is built-in, and does not require installing any additional packages. |
| 6 | |
| 7 | == How to Use HTML == |
| 8 | To inform the wiki engine that a block of text should be treated as HTML, use the ''html'' processor. |
| 9 | |
| 10 | This example should explain: |
| 11 | {{{ |
| 12 | #!html |
| 13 | <pre class="wiki">{{{ |
| 14 | #!html |
| 15 | <h1 style="text-align: right; color: blue">HTML Test</h1> |
| 16 | }}}</pre> |
| 17 | }}} |
| 18 | |
| 19 | Results in: |
| 20 | {{{ |
| 21 | #!html |
| 22 | <h1 style="text-align: right; color: blue">HTML Test</h1> |
| 23 | }}} |
| 24 | |
| 25 | Note that Trac sanitizes your HTML code before displaying it. That means that if you try to use potentially dangerous constructs such as Javascript event handlers, those will be removed from the output. |
| 26 | |
| 27 | Since 0.11, the filtering is done by Genshi, and as such, the produced output will be a well-formed fragment of HTML. In other words, this mean that you can no longer use two HTML blocks, one for opening a <div>, the second for closing it, in order to wrap arbitrary wiki text. |
| 28 | The new way to wrap any wiki content inside a <div> is to use the ''div'' Wiki processor: |
| 29 | |
| 30 | {{{ |
| 31 | {{{ |
| 32 | #!div class=important style="border: 2pt solid; text-align: center" |
| 33 | This is the ''only'' way to go in Trac 0.11 |
| 34 | }}} |
| 35 | }}} |
| 36 | |
| 37 | Results in: |
| 38 | {{{ |
| 39 | #!div class=important style="border: 2pt solid; text-align: center" |
| 40 | This is the ''only'' way to go in Trac 0.11 |
| 41 | }}} |
| 42 | |
| 43 | Note that if you don't specify a CSS class, the `wikipage` class will be added, so that the special layout of headers is respected in the <div>. If you specify explicitly the padding property, you have to take this into account (tip: [http://getfirebug.com/ get FireBug]!). |
| 44 | |
| 45 | For spans, you should rather use the Macro call syntax: |
| 46 | {{{ |
| 47 | Hello [[span(''WORLD'' (click [#world-anchor here]), style=color: green; font-size: 120%, id=world-anchor)]]! |
| 48 | }}} |
| 49 | |
| 50 | Results in: |
| 51 | Hello [[span(''WORLD'' (click [#world-anchor here]), style=color: green; font-size: 120%, id=world-anchor)]]! |
| 52 | |
| 53 | |
| 54 | == Images == |
| 55 | If you want display an image inline, append the following: '''?format=raw''' after the file name. For example, to display the Trac logo inline, use this syntax: |
| 56 | |
| 57 | {{{ |
| 58 | <img src="http://www.edgewall.org/gfx/trac_logo.png?format=raw" /> |
| 59 | }}} |
| 60 | |
| 61 | {{{ |
| 62 | #!html |
| 63 | <img src="http://www.edgewall.org/gfx/trac_logo.png?format=raw" /> |
| 64 | }}} |
| 65 | |
| 66 | |
| 67 | |
| 68 | == More Information == |
| 69 | |
| 70 | * http://www.w3.org/ -- World Wide Web Consortium |
| 71 | * http://www.w3.org/MarkUp/ -- HTML Markup Home Page |
| 72 | |
| 73 | ---- |
| 74 | See also: WikiProcessors, WikiFormatting, WikiRestructuredText |