私はこれに関する関連情報を見つけることができませんでしたが、それができないことを飲み込むのは難しいと思います。
ポップオーバーの矢印をカスタマイズするにはどうすればよいですか?私はすでにしましたが、クラス.arrowなどを変更しましたが、ポップオーバーの位置がめちゃくちゃになっています。
それで、そうするための正しい方法は何ですか?ドキュメントが見つかりませんでした。
以下は、私が使用しているクラスです。これまでのところ、矢印は間違っています。
.popover {
position: absolute;
top: 0;
left: 0;
z-index: 1010;
display: none;
padding: 5px;
}
.popover.top {
margin-top: -5px;
}
.popover.right {
margin-left: 5px;
}
.popover.bottom {
margin-top: 5px;
}
.popover.left {
margin-left: -5px;
}
.popover.top .arrow {
bottom: 0;
left: 50%;
margin-left: -5px;
border-left: 5px solid transparent;
border-right: 5px solid transparent;
border-top: 5px solid #000000;
}
.popover.right .arrow {
top: 50%;
left: 0;
margin-top: -5px;
border-top: 5px solid transparent;
border-bottom: 5px solid transparent;
border-right: 5px solid #000000;
}
.popover.bottom .arrow {
top: 0px;
left: 50%;
margin-left: -5px;
border-left: 9px solid transparent;
border-right: 9px solid transparent;
border-bottom: 19px solid #000000;
}
.popover.left .arrow {
top: 50%;
right: 0;
margin-top: -5px;
border-top: 5px solid transparent;
border-bottom: 5px solid transparent;
border-left: 5px solid #000000;
}
.popover .arrow {
position: absolute;
width: 0;
height: 0;
}
.popover-inner {
padding: 3px;
width: auto;
overflow: hidden;
background: #000000;
background: rgba(0, 0, 0, 0.8);
-webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
-moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
}
.popover-title {
padding: 9px 15px;
line-height: 1;
background-color: #252525;
-webkit-border-radius: 3px 3px 0 0;
-moz-border-radius: 3px 3px 0 0;
border-radius: 3px 3px 0 0;
background-color: rgba(37, 37, 37, 0.7);
font-size: 14px;
color: #7e7e7e;
}
.popover-content {
padding: 14px;
background-color: #252525;
-webkit-border-radius: 0 0 3px 3px;
-moz-border-radius: 0 0 3px 3px;
border-radius: 0 0 3px 3px;
-webkit-background-clip: padding-box;
-moz-background-clip: padding-box;
background-clip: padding-box;
background-color: rgba(37, 37, 37, 0.7);
}
.popover-content p, .popover-content ul, .popover-content ol {
margin-bottom: 0;
}
.popover-content table {
background: transparent;
}
.popover-content table td {
border: 0px;
background: transparent;
color: #7e7e7e;
}
矢印は赤い正方形を指している必要があります
ありがとう。
Twitter Bootstrapは Less に基づいています。
矢印の外観を変更する場合は、 bootstrap less variables を使用して変更します。
// Tooltips and popovers
// -------------------------
@tooltipColor: #fff;
@tooltipBackground: #000;
@tooltipArrowWidth: 5px;
@tooltipArrowColor: @tooltipBackground;
@popoverBackground: #fff;
@popoverArrowWidth: 10px;
@popoverArrowColor: #fff;
@popoverTitleBackground: darken(@popoverBackground, 3%);
// Special enhancement for popovers
@popoverArrowOuterWidth: @popoverArrowWidth + 1;
@popoverArrowOuterColor: rgba(0,0,0,.25);
Sassを使用している場合は、代わりに Sass Variables を使用して同じことを行ってください。
悲しいことに TB-Customizer にはすべての変数がないので、自分でコンパイルする必要があるかもしれません。
編集:
新しい Bootstrap 3カスタマイザ がこれらのオプションを提供するようになりました。
LESSを再コンパイルせずに、カスタムstyle.cssを使用してbootstrapを上書きするだけの場合、探しているcssルールは.popover.top > .arrow:after { border-top-color: yourColorHere; }
は、矢印だけの色を変更します。
これらの変数を使用して、ツールチップをカスタマイズします。
@tooltip-max-width: 200px;
@tooltip-color: #FFF;
@tooltip-bg: #000;
@tooltip-opacity: .9;
@tooltip-arrow-width: 5px;
@tooltip-arrow-color: #000;
ここのドキュメントを確認してください: http://getbootstrap.com/customize/#tooltips
ポップオーバーのボーダーの太さを調整できませんでした。これを調整するために、popovers.lessに@popoverBorderThicknessを追加しました。これらの行のみが変更されます。コンテキスト用にファイル全体を含めました。
//
// Popovers
// --------------------------------------------------
.popover {
position: absolute;
top: 0;
left: 0;
z-index: @zindexPopover;
display: none;
max-width: 276px;
padding: 1px;
text-align: left; // Reset given new insertion method
background-color: @popoverBackground;
-webkit-background-clip: padding-box;
-moz-background-clip: padding;
background-clip: padding-box;
border: @popoverBorderThickness solid @popoverOuterColor;
.border-radius(6px);
.box-shadow(0 5px 10px rgba(0,0,0,.2));
// Overrides for proper insertion
white-space: normal;
// Offset the popover to account for the popover arrow
&.top { margin-top: -10px; }
&.right { margin-left: 10px; }
&.bottom { margin-top: 10px; }
&.left { margin-left: -10px; }
}
.popover-title {
margin: 0; // reset heading margin
padding: 8px 14px;
font-size: 14px;
font-weight: normal;
line-height: 18px;
background-color: @popoverTitleBackground;
border-bottom: 1px solid darken(@popoverTitleBackground, 5%);
.border-radius(5px 5px 0 0);
&:empty {
display: none;
}
}
.popover-content {
padding: 9px 14px;
}
// Arrows
//
// .arrow is outer, .arrow:after is inner
.popover .arrow,
.popover .arrow:after {
position: absolute;
display: block;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
}
.popover .arrow {
border-width: @popoverArrowOuterWidth;
}
.popover .arrow:after {
border-width: @popoverArrowWidth;
content: "";
}
.popover {
&.top .arrow {
left: 50%;
margin-left: -@popoverArrowOuterWidth;
border-bottom-width: 0;
border-top-color: #999; // IE8 fallback
border-top-color: @popoverArrowOuterColor;
bottom: -@popoverArrowOuterWidth;
&:after {
bottom: @popoverBorderThickness * 1.414;// longer line gets thinner use Pythagorean theorem to correct
margin-left: -@popoverArrowWidth;
border-bottom-width: 0;
border-top-color: @popoverArrowColor;
}
}
&.right .arrow {
top: 50%;
left: -@popoverArrowOuterWidth;
margin-top: -@popoverArrowOuterWidth;
border-left-width: 0;
border-right-color: #999; // IE8 fallback
border-right-color: @popoverArrowOuterColor;
&:after {
left: @popoverBorderThickness * 1.414;// longer line gets thinner use Pythagorean theorem to correct
bottom: -@popoverArrowWidth;
border-left-width: 0;
border-right-color: @popoverArrowColor;
}
}
&.bottom .arrow {
left: 50%;
margin-left: -@popoverArrowOuterWidth;
border-top-width: 0;
border-bottom-color: #999; // IE8 fallback
border-bottom-color: @popoverArrowOuterColor;
top: -@popoverArrowOuterWidth;
&:after {
top: @popoverBorderThickness * 1.414;// longer line gets thinner use Pythagorean theorem to correct
margin-left: -@popoverArrowWidth;
border-top-width: 0;
border-bottom-color: @popoverArrowColor;
}
}
&.left .arrow {
top: 50%;
right: -@popoverArrowOuterWidth;
margin-top: -@popoverArrowOuterWidth;
border-right-width: 0;
border-left-color: #999; // IE8 fallback
border-left-color: @popoverArrowOuterColor;
&:after {
right: @popoverBorderThickness * 1.414;// longer line gets thinner use Pythagorean theorem to correct
border-right-width: 0;
border-left-color: @popoverArrowColor;
bottom: -@popoverArrowWidth;
}
}
}