1

我是第一次设置 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标签;如果是这种情况,有没有办法__style__只在一个列上应用 Trac(只在列上summary就可以了。)

先感谢您。

4

1 回答 1

1

我测试了以下最小的 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覆盖可能存在的任何其他样式。如果这改变了行为,那么您的问题是由其中一个样式表中的冲突定义引起的。

于 2011-02-08T00:27:00.517 回答