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その場合、Trac__style__を 1 つの列だけに適用する方法はありますか (列だけに適用して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を使用して、存在する可能性のある他のスタイルをオーバーライドしてみてください。これにより動作が変わる場合は、スタイル シートの 1 つで定義が競合しているために問題が発生しています。

于 2011-02-08T00:27:00.517 に答える