Сегодня HTML-элемент устроен так, что содержащаяся в нем прикладная информация находится между его открывающим и закрывающим тегами. Все атрибуты открывающего тега служебные. В то же время данные в базах данных хранятся записями, которые выводят как XML-теги (т.е. многие атрибуты содержат прикладную информацию).
Сейчас мы вынуждены создавать xsl-файл для того, чтобы визуализировать xml-файл. Я предлагаю более быстрый путь: укажем атрибуты в css-файле так, как будто это вложенные теги (перед названиями атрибутов поставим знак "§"). Такие теги будем называть виртуальными.
html-, xml-файл | css-файл | отображение на экране |
<a a1="x" a2="y" a3="z" a4="w"> |
a §a1 { color: red; newstring:yes; } a §a2 { color: blue; newstring:yes; } a §a3 { color: green; newstring:yes; } |
<a a4="w"> <span color="red"> x</span><br> <span color="blue"> y</span><br> <span color="green">z</span><br> </a> |
<tab> <a a1="v11" a2="v12" a3="v13"> <a a1="v21" a2="v22" a3="v23"> <a a1="v31" a2="v32" a3="v33"> </tab> |
tab { kind:table } a { type:row; newstring:yes; } a §a1 { } a §a2 { } a §a3 { } |
<table> <tr> <td>v11</td> <td>v12</td> <td>v13</td> </tr> <tr> <td>v21</td> <td>v22</td> <td>v23</td> </tr> <tr> <td>v31</td> <td>v32</td> <td>v33</td> </tr> <table> |
html60author