基本的に私が欲しいのは、コンテンツの中央に垂直に配置され、三角形に基づく明示的な測定値を使用せずにコンテンツの右側にわずかにパディングされた CSS 三角形ですborder-width
。
この例のように三角形が巨大な場合、ラッパーは CSS 三角形を含むように展開する必要があり、CSS 三角形は常にラッパーの中央に垂直方向に配置する必要があります。大量のテキストがある場合、CSS Triangle は、テキストが交差する場合にテキストをオーバーラップする必要があります。
これは完全に理にかなっているように思えますが、いくつかの問題に遭遇しました。私が今いる場所については、このJsFiddleをチェックしてください。
を割り当てるとmin-height
、以下に到達でき1.
ます。問題1.
は、任意の高さを選択する必要があることです。さらに、コンテンツが大きくなると、top: 25%
真の中央に配置されないため、垂直方向に完全に中央揃えにはなりません。複数の異なるサイズの矢印を簡単に許可するために、min-height や任意の高さを割り当てたくありません。そのサイズを独自に計算したいだけです。
またoverflow: hidden
、スクロールバーが表示されないようにするために を使用する必要がありました。これを行うright: -45px
と、CSS Triangle ボックスの「右側」が押し出されるため、overflow: visible
どこでも使用できません。
固定高さを削除すると、最終的には2.
明示的な高さやその他の明示的な測定値を使用せずにこれを行うことは可能ですか? 垂直方向に正しく配置するにはどうすればよいですか?jQuery を使用して幅などを取得するアイデアがあれば、それも結構です - タグ付けしました。