> On Aug 8, 2015, at 22:36, Tom Livingston <[email protected]> wrote:
>
> Because 100% couldn't be calculated because the parent was a percentage?
> '100% of what' kind of thing?
Close… :-)
The physical parent's width is known and can be computed, no problem (parent in
the source; in this case the `<li>`); in “normal” circumstances, the percentage
width on the child can be computed. However, in your case, there are some more
(virtual) elements between the `a` and the `li`.
from your original message
> a{
> display: table-cell; <<<<<<<< this
Per css 2.1:17.2.1, browsers will generate the missing elements as anonymous
table objects (<tr>,<tbody><table>); that <table> element has a width of `auto`
- for tables that means the width depends on the width of the cell(s). Then the
percentage width on the `a` cannot be resolved (computed); it is undefined -
see CSS2.1:10.2.
But if you set the width of the `a` to `inherit`, then yes everything falls in
place, as the width of the `li` is already computed, and that is the value that
cascades through.
(hope this is readable English)
Philippe
--
Philippe Wittenbergh
http://l-c-n.com/
______________________________________________________________________
css-discuss [[email protected]]
http://www.css-discuss.org/mailman/listinfo/css-d
List wiki/FAQ -- http://css-discuss.incutio.com/
List policies -- http://css-discuss.org/policies.html
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/