知っているわけではないのですが、不思議に感じたのでちょっと検証してみました。
結論としては、恐らく[auto]定義になっていると思われます。
lang
1.s1 {
2border: solid 1px black;
3width: 100%;
4}
5
6.s2 {
7border: solid 1px black;
8width: 100$;
9}
10
11.s3 {
12border: solid 1px black;
13width: auto;
14}
15
16.s4 {
17border: solid 1px black;
18}
こんな感じにスタイル比較してみたら s2,s3,s4 の結果が等しく、s1 の要素幅との間に 2px (borderの左右幅の和)の差が出ました。
※width の初期値は auto なので s3 と s4 が同じ結果になるのは当然ですが、そうであることを確認するためにあえて書いてます
ということで、ブラウザが「単位でもなく、かわからん文字だから無視(auto)でいいだろう」と解釈してるんじゃないかなと・・・。
ちなみに # や & を使ってみても同じ結果になります。
ご質問では「(90%→90$) の結果が同じ」とのことでしたが、90% と auto の結果に差がなく気づきにくいのだろうと解釈しましたが、いかがでしょう?
こんな曖昧な回答ですみません。。。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/05/27 09:16