> On Aug 8, 2015, at 22:36, Tom Livingston <tom...@gmail.com> 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 [css-d@lists.css-discuss.org]
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/

Reply via email to