Jquery 如何为twitter引导popover设置最大宽度属性?
我在一个跨度上悬停的时候有一个爆米花Jquery 如何为twitter引导popover设置最大宽度属性?,jquery,twitter-bootstrap,popover,Jquery,Twitter Bootstrap,Popover,我在一个跨度上悬停的时候有一个爆米花 $(".ico-sign").setPopover({ placement: 'bottom', content: $("#divInfo").html() }); 如何设置此popover的max width属性 我试过了,但没用 .popover { max-width: 450px !important; } 编辑:我假设您使用的是twitter引导popover 您可以使用以下css来实现这一点: .po
$(".ico-sign").setPopover({
placement: 'bottom',
content: $("#divInfo").html()
});
如何设置此popover的max width
属性
我试过了,但没用
.popover {
max-width: 450px !important;
}
编辑:我假设您使用的是twitter引导popover 您可以使用以下css来实现这一点:
.popover {
position: absolute;
top: 0;
left: 0;
z-index: 1010;
display: none;
max-width: 10px;
padding: 1px;
text-align: left;
white-space: normal;
background-color: #ffffff;
border: 1px solid #ccc;
border: 1px solid rgba(0, 0, 0, 0.2);
-webkit-border-radius: 6px;
-moz-border-radius: 6px;
border-radius: 6px;
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
-webkit-background-clip: padding-box;
-moz-background-clip: padding;
background-clip: padding-box;
}
我已经为工作做好了准备。更改css中的
max width
以测试首先,尝试了解html/css以及一些js脚本(作为工具提示扩展的bootstrap中的popover)的工作原理。
(我也遇到了同样的问题,所以这里是我的解决方案…)
工具提示的工作原理分为三个步骤:
I.bs/工具提示对工具提示内容的大小进行一些计算
Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) {
return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } :
placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } :
placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } :
/* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width }
}
II。bs/tooltip在触发器元素附近添加一些html容器(实际上在触发器元素之后)
III.根据第一步中得到的大小,bs/工具提示会将您的内容绝对放置在第二步中的容器中
除此之外,前面提到的css添加了一些关于如何工作的参数,当然还有外观,我的意思是特别是最大宽度属性
正如您所看到的,它只不过是将绝对元素放置在触发器元素附近
问题是:工具提示相对于触发器元素放置提示,但相对于包含的父项放置提示
问题结论
总之:当父项(要触发)的宽度为100px时,您的最大宽度为200px(on.popover)将不起作用
解决方案:
至少有两种解决方案:
.popover {
position: absolute;
top: 0;
left: 0;
z-index: 1010;
display: none;
max-width: 276px;
padding: 1px;
text-align: left;
white-space: normal;
background-color: #fff;
background-clip: padding-box;
border: 1px solid #ccc;
border: 1px solid rgba(0, 0, 0, .2);
border-radius: 6px;
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
}