私はカスタムグリッドで微妙に変わっていて、他の人がグリッドシステムをどのように作成したのかを知りたかったのです。 twitterのブートストラップがとても人気が高いように見えたので、私はそのコードを見てきました。今私はなぜ浮動小数点を使用しているのだろうか?私はdisplay: inline-block;
を使用します。html要素にはdisplay: inline;
またはdisplay: block;
のいずれかがあります。浮動小数点数を避けるようにします。しかし何らかの理由でブートストラップの作成者が浮動小数点を使用することに決めました。最初に私は彼らがbackward互換性を持っていると思っていました。ie6はdisplay: inline-block;
をサポートしておらず、ie7はデフォルトでdisplay: inline;
の要素でしかサポートしていないからです。しかし、ゲームの中では6倍になります。そして、彼らは* zoom:1を使用するmicro clearfix hackを使用しているので、ターゲットにie6 + IMO彼らは同じを複製することができますdisplay: inline-block;
*display: inline; *zoom: 1;
最後の質問浮動小数点表示のインラインブロックをなぜですか?私は上記の問題を解決しようとしましたか?なぜbootstrapはdisplay:inline-blockの代わりに.spanで浮動小数点数を使用するのですか?
答えて
セマンティックウェブの用語では、<img>
のようなブロックレベルの要素をテキストの行内に配置する場合は、display: inline-block
を使用する必要があります。ページのメインレイアウトを作成するために、インライン配置は使用しないでください。 display: inline-block
の要素は、親要素のfont-size
とline-height
のようなプロパティからも有効です。これにより、ページレイアウトの精度が低下します。 ページのメインレイアウトを作成するときは、inline-block
の代わりにfloat
を使用する方がよいでしょう。
インラインブロックは空白対応で、実際の内容とスタックの自動幅はHTMLの順になります。フロートはclearfixメソッドを必要とせず、ブロック要素に基づいています。これらのエレメントは、使用可能なスペースに自動的に横幅を持ちます。純粋に意味論的に、インラインブロックは、ホワイトスペース認識形式と順序の重要性から、意味が少なくなります。しかし、それを純粋に機能的な方法で見ると、どちらもグリッド用ではありません。疑似CSSでない場合は、意味のないHTMLタグclearfixeも使用します。私の信じるところでは、彼らはどちらも勝者ではありません。しかし、フレックスボックスが今後数年間で必須となる時代には、もう一つの選択肢はありません。インラインブロックと
:
<div>
<div style="display:inline-block; width:30%;">col1
</div><div style="display:inline-block; width:70%;">col2</div>
</div>
タグは任意のガターを閉じ、/追加一緒に接着しなければなりません。コンテナdivは、項目を別々の行の一部にするために必要です。フロートと
:
<div class="clearfix">
<div style="float:left; width:30%;">col1</div>
<div style="float:left; width:70%;">col2</div>
</div>
Clearfixは「行」を強制することが必要である(任意の通常の流れのアイテムの問題を却下するか、フロート後に浮かぶ)
かどうか一つを使用するか、他のは問題ですあなたの目標(と味)。浮動小数点数よりもインラインブロックが好きだと言う必要があるのは、両方の列幅を知っているか相対サイズ(%)を使用している限りです。私はそれが、どのように使用されるべきかにかかわらず、問題ではない問題に対して、clearfix、浮動小数点型の浮動小数点型よりも直感的で予測可能だと思います。インラインブロックの空白認識のみが、
皮肉なことに、表はまったく問題ありません(インラインブロックを順序どおりに配置する必要があるため、ここで議論する動機があります)。
私たちが反応性について話しているなら、テーブルはインラインブロックを失います。たとえば、デスクトップに4列あり、タブレットに2列、モバイルに1列が必要です。インラインブロックでは、幅を他の幅に設定して、うまくいきなりラップします(折れたときの余白に注意してください)。テーブルでは、あなたは実際の行に拘束されています。これはかなり頑固になります。 Flexboxは長い間必要とされ、美しく見えます。特定の状況では、レイアウトを柔軟に調整できます。
私はブートストラップを使用しましたが、人々のクレジットとその態度を与えられていないことに疲れました。しかし、彼らが何かしたことを学ぶのは便利です。彼らは相対的なグリッドサイジングを使用している3.0を読んでください。ネストされたグリッドと整列に問題があります。
---- --a- ---- ----
---b------
.... ..c.
Col aは正常な親の親である。 Col cは、bの子ネストされたcolです。パディングとボーダーボックスモデルを使用している場合を除き、ガターがコンテナに対して可変であるため、cとaを相対サイズで揃えるのは難しいです。しかし、そのようにすれば、多くの柔軟性が失われます。あなたは、いくつかの背景とパディングを持つcolをしたいときは、グリッドシステムを台無しにしているので、コードを混乱させるスタイルを設定するコンテナを使用する必要があります。彼らがこれに対する解決策を見つけたかどうかはまだ研究していません。私はまだいない。私は固定されたピクセルに行きましたが、それは応答的なデザインでは、いくつかの固定幅を持つことができ、モバイルの周りのすべてが相対的なグリッドを使用できることを意味します。
すばらしい答え!私が最初に尋ねたように、私はインラインブロックレベルの要素の空白の感度を認識していませんでした。ちょうどあなたのように、浮動小数点以上のインラインブロックを使用するのが好きです。私はフレックスボックスの考え方も好きですが、私たちはまだそこにはないと思っています。ウェブキット開発者はいい仕事をしていますが、ブラウザベンダーは適切に実装するために時間を取るでしょう。 – orustammanapov
IE8が時間、または誰かがそれのためのhtcユニットを書く。今日のIE10では、古いflexboxの構文がサポートされていますが、これはすでに廃止されています。そう、ええ、私たちは現在、浮動小数点/インラインブロックやテーブルに固執しています;) – Sanne
これは答えとしてマークされたものよりも良い答えです。なぜインラインブロックが使用されないのかは、実際には本当の理由があります。それは不幸な理由ですが、それにはポイントがあります。もう一つの答えは、理論的で学問的なものでした。エンディング。この状況で浮動小数点を使用することによる私の唯一の問題は、スパンを使用して入力エレメントに対して浮動小数点を明示的にオフにすることで、浮動範囲がすべての入力フィールドより先に飛び越えて痛みにつながることです。 – chubbsondubs
Pure(以前のYahoo YUI Grid)のように、float
ではなくdisplay: inline-block;
を使用するグリッドシステムが優先されます。テキストの方向を右から左に変更し、レイアウトを自動的に元に戻します。浮動はこれをしません。浮動小数点数はまた、クリアと他のクロスブラウザの奇妙さの必要性を紹介します。 Pureによって示されるように、を超えるinline-block
の可能性がある不正確さは修正できます。 display: inline-block;
がであるという批判に関しては、display: table;
の使用は、ブラウザのクロスセンタリングのために禁止されるべきであるかもしれないが、レイアウトにはを使用することを意味しない。私はまた、用語Semantic Webが本当にCSSに当てはまるかどうかという疑問は、用語が主にHTMLに関係し、その要素と属性を使用して機械可読な意味を与えているためです。 CSSの要点は、セマンティックHTMLを根本的にスタイルすることです。したがって、古典的なサイトはCSS Zen Gardenのようになります。
私は、技術がバグを悪用していない限り、ユーザーやデバイスにコンテンツを妨害するものではなく、十分サポートされていると言います。 Stu NichollsのCSSPlayのように、正統ではなくサポートされた方法でCSSを使用することはできません。
興味深いことに、Flexible Boxも最新のブラウザ(≧IE10および同等のブラウザ)に対応する優れたレイアウトシステムである純粋なグリッドに組み込まれています。
- 1. ページスタイリング:浮動小数点を使用する代わりに
- 2. 整数の代わりに浮動小数点を返す
- 3. CSSプロパティテーブルの代わりに浮動小数点数を使用する理由
- 4. 浮動小数点型の浮動小数点数を使用している浮動小数点数は、浮動小数点数の上位16桁です。
- 5. 浮動小数点数は浮動小数点数ですか?
- 6. 小数点の代わりに小数点のカンマを使用する変数
- 7. なぜNaNの型は浮動小数点ですか?
- 8. なぜこの浮動小数点比較は真ですか?
- 9. CKEditorは浮動小数点の代わりに画像を整列します
- 10. 小数点の代わりにコンマを使用して小数点を表示
- 11. 浮動小数点の浮動小数点が正しく浮動しない
- 12. 浮動小数点数浮動小数点数値
- 13. 浮動小数点型の浮動小数点型でインクリメント(演算子++)を使用していますか?
- 14. なぜ "overflow:hidden"が浮動小数点数をクリアするのですか?
- 15. 「1.01383e + 007」の代わりに完全な浮動小数点数を印刷する方法は?
- 16. jQuery animateNumber - 浮動小数点浮動小数点の方法
- 17. 浮動小数点値と浮動小数点値の比較
- 18. この浮動小数点配列はなぜエラーになりますか?
- 19. どの浮動小数点比較がより正確で、なぜですか?
- 20. CSSに浮動小数点の中心がないのはなぜですか?
- 21. 最小浮動小数点数float32(現時点ではnumpyを使用)
- 22. 浮動小数点浮動小数点浮動小数点浮動小数点数 - 浮動小数点数を持つ2つの要素:左に動くようにdivを配置する右のスタイル
- 23. 他の浮動小数点を使った逆浮動小数点
- 24. divボックスの周りをわずかに浮動小数点を浮かべて
- 25. C++がPythonに浮動小数点浮動小数点を変換する
- 26. 浮動小数点要素を浮動小数点要素にする
- 27. OpenGL 2.1で浮動小数点レンダリングターゲットのデプスバッファを使用する
- 28. CSSが浮動小数点数の浮動小数点数の問題
- 29. IE7は浮動小数点数が0になります。
- 30. スペースがないときに浮動小数点数を強制的にリサイズするのではなく、浮動小数点数を浮動小数点以下の表の下に移動するにはどうすればよいですか?
あなたの答えはありがたいですが、確かにimgはインライン要素であり、pはブロックレベルの要素であり、その逆ではありませんか?:) – orustammanapov
実際には、 'img'と' p'の両方がブロックレベルです要素。私は答えを修正した。 – Mojtaba
私は申し訳ありませんが、私の間違いインラインレベル要素ではなく、レベル要素をブロックしません。 ** img **タグは**デフォルトで**インラインブロック**です。ブロックレベルの要素のように幅と高さを定義できますが、同じ行の他の要素と一緒にフローティングすることなくインラインでフローできます。 – orustammanapov