[ruby/rdoc] Use distinct styles for note lists and label lists
(https://github.com/ruby/rdoc/pull/1209) * Use the original `label` description list style As a default for all description lists, the original "label" style is more readable. This is slightly different from the original `label` dl though: * slightly increased left margin for `dd` (to 1em) * removed right margin on `dd` * removed `dt` bottom margin and `dd` top margin, to reduce the gap between the term and its description (to only the standard line-height gap). * Add closing tags for description list terms Without the closing tags, the dt elements contain whitespace after the text. This normally isn't a big deal, but does mess some things up, e.g: using `::after` with `content: ", "` in stylesheets. * Restore float:left style for note lists Unlike the original note list styles, this version sets the line-height for all `dt` elements to be the same as the `p` elements contained inside the `dd`, so that the second line has the same indentation as all subsequent lines. * Add commas between note list terms https://github.com/ruby/rdoc/commit/9e69ea6d75
This commit is contained in:
parent
bd831bcca5
commit
dd43af3be7
@ -469,14 +469,30 @@ main dl {
|
||||
}
|
||||
|
||||
main dt {
|
||||
margin-bottom: 0.5em;
|
||||
margin-right: 1em;
|
||||
float: left;
|
||||
line-height: 1.5; /* matches `main p` */
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
main dl.note-list dt {
|
||||
margin-right: 1em;
|
||||
float: left;
|
||||
}
|
||||
|
||||
main dl.note-list dt:has(+ dt) {
|
||||
margin-right: 0.25em;
|
||||
}
|
||||
|
||||
main dl.note-list dt:has(+ dt)::after {
|
||||
content: ', ';
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
main dd {
|
||||
margin: 0 1em 1em 0.5em;
|
||||
margin: 0 0 1em 1em;
|
||||
}
|
||||
|
||||
main dd p:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
/* Headers within Main */
|
||||
|
@ -407,7 +407,7 @@ class RDoc::Markup::ToHtml < RDoc::Markup::Formatter
|
||||
"<li>"
|
||||
when :LABEL, :NOTE then
|
||||
Array(list_item.label).map do |label|
|
||||
"<dt>#{to_html label}\n"
|
||||
"<dt>#{to_html label}</dt>\n"
|
||||
end.join << "<dd>"
|
||||
else
|
||||
raise RDoc::Error, "Invalid list type: #{list_type.inspect}"
|
||||
|
@ -146,7 +146,7 @@ class TestRDocMarkupToHtml < RDoc::Markup::FormatterTestCase
|
||||
end
|
||||
|
||||
def accept_list_item_start_label
|
||||
assert_equal "<dl class=\"rdoc-list label-list\"><dt>cat\n<dd>", @to.res.join
|
||||
assert_equal "<dl class=\"rdoc-list label-list\"><dt>cat</dt>\n<dd>", @to.res.join
|
||||
end
|
||||
|
||||
def accept_list_item_start_lalpha
|
||||
@ -154,13 +154,13 @@ class TestRDocMarkupToHtml < RDoc::Markup::FormatterTestCase
|
||||
end
|
||||
|
||||
def accept_list_item_start_note
|
||||
assert_equal "<dl class=\"rdoc-list note-list\"><dt>cat\n<dd>",
|
||||
assert_equal "<dl class=\"rdoc-list note-list\"><dt>cat</dt>\n<dd>",
|
||||
@to.res.join
|
||||
end
|
||||
|
||||
def accept_list_item_start_note_2
|
||||
expected = <<-EXPECTED
|
||||
<dl class="rdoc-list note-list"><dt><code>teletype</code>
|
||||
<dl class="rdoc-list note-list"><dt><code>teletype</code></dt>
|
||||
<dd>
|
||||
<p>teletype description</p>
|
||||
</dd></dl>
|
||||
@ -171,7 +171,7 @@ class TestRDocMarkupToHtml < RDoc::Markup::FormatterTestCase
|
||||
|
||||
def accept_list_item_start_note_multi_description
|
||||
expected = <<-EXPECTED
|
||||
<dl class="rdoc-list note-list"><dt>label
|
||||
<dl class="rdoc-list note-list"><dt>label</dt>
|
||||
<dd>
|
||||
<p>description one</p>
|
||||
</dd><dd>
|
||||
@ -184,8 +184,8 @@ class TestRDocMarkupToHtml < RDoc::Markup::FormatterTestCase
|
||||
|
||||
def accept_list_item_start_note_multi_label
|
||||
expected = <<-EXPECTED
|
||||
<dl class="rdoc-list note-list"><dt>one
|
||||
<dt>two
|
||||
<dl class="rdoc-list note-list"><dt>one</dt>
|
||||
<dt>two</dt>
|
||||
<dd>
|
||||
<p>two headers</p>
|
||||
</dd></dl>
|
||||
|
Loading…
x
Reference in New Issue
Block a user