Closed Bug 921716 Opened 9 years ago Closed 9 years ago

CSS -moz-column-rule property : 'visibility:hidden' doesn't hide column rules


(Core :: Layout, defect)

Not set





(Reporter: okapi1788, Assigned: heycam)



(1 file)

User Agent: Mozilla/5.0 (Windows NT 5.1; rv:24.0) Gecko/20100101 Firefox/24.0 (Beta/Release)
Build ID: 20130910160258

Steps to reproduce:

div#a {
-moz-column-count: 3;
-moz-column-rule:  thick solid red;
-webkit-column-count: 3;
-webkit-column-rule:  thick solid red;
border: thin solid red;
position: absolute;left: 3em;top:1.2em;width: 18em;padding:4px;
visibility: hidden;
/* workaround * / opacity: 0; /* */
background-color: rgba(241,241,241,.8);
div#b { position: relative; }
 div#b:hover > div#a {
 visibility: visible;
/* workaround * / opacity: 1; /* */
<p> ...
<div id=b><h4>moz-column-rule bug</h4>
<div id=a>
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor
<p> incididunt ut labore et dolore magna aliqua
<p> ...

Actual results:

hidden column rules are visible
Summary: CSS -moz-column-rule propery : 'visibility:hidden' doesn't hide column rules → CSS -moz-column-rule propetry : 'visibility:hidden' doesn't hide column rules
Summary: CSS -moz-column-rule propetry : 'visibility:hidden' doesn't hide column rules → CSS -moz-column-rule property : 'visibility:hidden' doesn't hide column rules
Component: General → CSS Parsing and Computation
Component: CSS Parsing and Computation → General
Core::Layout seems more appropriate.
Component: General → Layout
Ever confirmed: true
OS: Windows XP → All
Hardware: x86 → All
Version: unspecified → Trunk
Assignee: nobody → cam
Attached patch patchSplinter Review
Attachment #811512 - Flags: review?(sjohnson)
Comment on attachment 811512 [details] [diff] [review]

Review of attachment 811512 [details] [diff] [review]:

::: layout/generic/nsColumnSetFrame.cpp
@@ +1047,1 @@

Since you're here anyway, I'd probably remove this spacing.

::: layout/reftests/bugs/921716-1-ref.html
@@ +1,5 @@
> +<!DOCTYPE html>
> +<style>
> +div {
> +  -moz-column-count: 3;
> +  -moz-column-rule: thick solid transparent;

This line probably isn't needed, since the column rule isn't going to be shown, anyway. If it's included for spacing purposes, I think it would be better to specify the column gap instead, as the column rule is supposed to be drawn in the column gap, but shouldn't add to it. In other words, the column rule is drawn on top of the column-gap, but the column-gap is the portion that actually specifies how much space should exist between adjacent columns. (See  Example 19, below: )

::: layout/reftests/bugs/921716-1.html
@@ +1,5 @@
> +<!DOCTYPE html>
> +<style>
> +div {
> +  -moz-column-count: 3;
> +  -moz-column-rule: thick solid red;

See comment about column-gap in 921716-1-ref. It will likely have to be added here, too.
Attachment #811512 - Flags: review?(sjohnson) → review+
Ah, thanks for the info about the gap/rule.  I wasn't sure if the rule contributed to the spacing between the columns, but since it isn't, I'll remove the -moz-column-rule from the reference.
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla27
You need to log in before you can comment on or make changes to this bug.