画面に表示できる最小単位は 1px であるため、773*50%=386.5 のような数値で長さを選択する必要があります。
テストページ、一部ブラウザのスクリーンショットマーク幅も含みます。
IE:四捨五入して計算。
Firefox: 計算された値は小数部分を無視しますが、内部の各要素に余分な長さが割り当てられます。 2*386=772 のようにあと 1 ピクセルしかない場合、残りの 1 ピクセルはいずれかの要素に割り当てられ、最初の要素が最初に割り当てられます。たとえば、773 ピクセルが 2 つの 50% に割り当てられた場合、結果は次のようになります。 25% で 4 つに割り当てられる 387px と 386px、結果は次のようになります: 194px、193px、193px、193px、さらにいくつかの px の場合、773*33.3%=257.409、773*33.33%=257.6409 など無視される小数点の違い、分配原理も異なります。関連する情報が見つかりません。これは私の推測です。3 つの要素は四捨五入に従って割り当てられます。四捨五入されたものが最初に両側に割り当てられ、5 つに四捨五入されたものが割り当てられます最初の2つに3つの要素を3つに割り当てる 要素の上にある余分な部分は自由に割り当てる ルールは見当たりませんが、最初の要素は必ず割り当てられます。
FFには奇妙なことがいくつかあります。 Firefix のテストページ。 1024 の幅は自動的に割り当てられません。これはおそらく、外側のレイヤーにも小数があり、その結果 1px が割り当てられないためです。その後、Firefox をテストします。
Opera と Safari2: パーセンテージの小数部分は計算時に無視されます。計算された値は小数部分を無視します。内部の要素が計算された幅よりも大きい場合、後続の要素は折り返されません。
Netscape & Mozilla: 計算後の小数点以下を無視する 余分な部分は Firefox に少し似ていますが、余分な部分がより透明に表示され、33.33%*3=99.99% など奇妙です。 100% 未満、100% を超えると、奇妙なブラウザですが、幸いなことに、この 2 つのブラウザを使用する人は多くないので、あまり心配する必要はありません。
テストは完了していません。興味のある友達がテストを手伝ってください。別のテスト ページがあります。理由を知っている人は教えてください。