Можно ли в Trac добавить «text-ornament: line-through» как пользовательский __style__? - PullRequest
1 голос
/ 01 февраля 2011

Я впервые установил Trac 0.12.1 и написал несколько пользовательских запросов к отчетам.

Однако у меня возникают трудности с получением пользовательского макроса __style__ (описанного в документации здесь ) для отображения стиля text-decoration: line-through;. Это вообще не появляется.

Мой запрос примерно следующий:

SELECT p.value AS __color__,
   (CASE status WHEN 'closed' THEN 'text-decoration: line-through' END)
      AS __style__,
   id AS ticket, priority, summary, version
  FROM ticket t
  LEFT JOIN enum p ON p.name = t.priority AND p.type = 'priority'
  ORDER BY version DESC, id DESC

Это не отображает закрытые билеты с прямой линией. Я вижу это в отрисованном источнике страницы, он правильно отформатирован в теге атрибута style="", например:

  </tr>
  <tr class="color1-even" style="text-decoration: line-through;">
        <td class="ticket">

Однако, изменив строку 2 в приведенном выше запросе следующим образом:

   (CASE status WHEN 'closed' THEN 'color: #666; background: #ccc' END)

На самом деле цвет строки и фона изменяется на средне-серый, поэтому стиль определенно работает.

Кто-нибудь достаточно знаком с Trac, чтобы сказать, почему это может не сработать, и предложить обходной путь? Зачеркнутый действительно помогает различать закрытые / недействительные билеты.

Возможно, text-decoration:line-through не работает с тегами tr; если это так, есть ли способ применить Trac __style__ только к одному столбцу (было бы неплохо иметь его только на summary)

Заранее спасибо.

1 Ответ

1 голос
/ 08 февраля 2011

Я протестировал следующий минимальный HTML-документ:

<html><body>
<table border=1>
<tr><th>Col 1</th><th>Col 2</th></tr>
<tr><td>Data 1</td><td>Data 2</td></tr>
<tr style="text-decoration: line-through;"><td>Data 3</td><td>Data 4</td></tr>
</table>
</body></html>

Результаты были ожидаемыми (как в Firefox, так и в IE).Текст в последнем ряду проходил через него.Я не думаю, что наличие text-decoration: line-through; внутри элемента <tr> является вашей проблемой здесь.

Убедитесь, что в ваших таблицах стилей нет ничего, что могло бы переопределить ваш встроенный CSS.Попробуйте использовать text-decoration: line-through !important, чтобы переопределить любые другие стили, которые могут присутствовать.Если это меняет поведение, то ваша проблема вызвана конфликтующим определением в одной из таблиц стилей.

...