aboutsummaryrefslogtreecommitdiff
path: root/haddock-api/src/Haddock/Backends/Xhtml
diff options
context:
space:
mode:
authorPhil Ruffwind <rf@rufflewind.com>2015-06-12 12:59:24 -0400
committerPhil Ruffwind <rf@rufflewind.com>2015-06-12 13:07:25 -0400
commita476b251e363b3b0ed30c75cf72a19fc275d6440 (patch)
tree8367c4b4606ef9ddc020893a7efe900235d807e4 /haddock-api/src/Haddock/Backends/Xhtml
parentf48474f640387dca4b42182c1ac78ba30865742d (diff)
Fix alignment of Source links in instance table in Firefox
Due to a Firefox bug [1], a combination of 'whitespace: nowrap' on the parent element with 'float: right' on the inner element can cause the floated element to be displaced downwards for no apparent reason. To work around this, the left side is wrapped in its own <span> and set to 'float: left'. As a precautionary measure to prevent the parent element from collapsing entirely, we also add the classic "clearfix" hack. The latter is not strictly needed but it helps prevent bugs if the layout is altered again in the future. Fixes #384. Remark: line 159 of src/Haddock/Backends/Xhtml/Layout.hs was indented to prevent confusion over the operator precedence of (<+>) vs (<<). [1]: https://bugzilla.mozilla.org/show_bug.cgi?id=488725
Diffstat (limited to 'haddock-api/src/Haddock/Backends/Xhtml')
-rw-r--r--haddock-api/src/Haddock/Backends/Xhtml/Layout.hs5
1 files changed, 3 insertions, 2 deletions
diff --git a/haddock-api/src/Haddock/Backends/Xhtml/Layout.hs b/haddock-api/src/Haddock/Backends/Xhtml/Layout.hs
index e686d648..914a7a7e 100644
--- a/haddock-api/src/Haddock/Backends/Xhtml/Layout.hs
+++ b/haddock-api/src/Haddock/Backends/Xhtml/Layout.hs
@@ -154,8 +154,9 @@ subTableSrc _ _ _ [] = Nothing
subTableSrc qual lnks splice decls = Just $ table << aboves (concatMap subRow decls)
where
subRow ((decl, mdoc, subs),L loc dn) =
- (td ! [theclass "src"] << decl
- <+> linkHtml loc dn
+ (td ! [theclass "src clearfix"] <<
+ (thespan ! [theclass "inst-left"] << decl)
+ <+> linkHtml loc dn
<->
docElement td << fmap (docToHtml Nothing qual) mdoc
)