Twitter 的工具提示问题 bootstrap
Tooltip issue with twitter bootstrap
我正在使用 twitter bootstrap 3
显示 tooltip
<td class = "skills" data-toggle="tooltip" data-placement="left" data-original-title="<?php echo $row['skills']; ?>"><?php echo $row['skills']; ?></td>
它显示得很好,但是当我将鼠标悬停在它上面时,它会将每个单元格向右移动。
如何解决?
我附上了两张快照,你可以看到它在向右移动。
编辑
我在此处添加一个测试 table,它的作用是在下一个 td
中显示工具提示,并且 td
的数据向右移动。
<table id="example-table" class="table table-striped table-hover table-condensed">
<thead>
<th>Serial</th>
<th>Name</th>
<th>Rating</th>
</thead>
<tbody>
<tr>
<td>1</td>
<td data-toggle="tooltip" data-placement="right" data-original-title="A">A</td>
<td>php</td>
</tr><tr>
<td>2</td>
<td data-toggle="tooltip" data-placement="right" data-original-title="B">B</td>
<td>C#</td>
</tr>
</tbody>
</table>
这里是js
<script type="text/javascript">
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip();
});
</script>
我找到了解决方案,只是张贴在这里,以便有一天有人会发现它有用。
所以,任何人如果遇到这个问题,我的意思是如果在使用 twitter-bootstrap tooltip
时在悬停时移动数据并且按钮在悬停时弹跳,您只需要执行以下操作:
上一个
<script type="text/javascript">
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip();
});
</script>
只需要添加容器(在bootstrap 2.3中修复)
<script type="text/javascript">
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip({container: 'body'});
});
</script>
好的,问题是 tooltip
默认情况下插入在具有 属性 的 html
元素之后。由于工具提示是 div
元素破坏了您的 table:
结构如下:
<td></td>
<div></div>
<td></td>
无效。您需要更改该行为,更改具有 tooltip
:
的容器
$('[data-toggle="tooltip"]').tooltip({container:'body'});
BootplyDemo
不要直接用于 td 使用 span 标签希望它能起作用:
<table id="example-table" class="table table-striped table-hover table-condensed">
<thead>
<th>Serial</th>
<th>Name</th>
<th>Rating</th>
</thead>
<tbody>
<tr>
<td>1</td>
<td><span data-toggle="tooltip" data-placement="right" data-original-title="A">A</span></td>
<td>php</td>
</tr><tr>
<td>2</td>
<td><span data-toggle="tooltip" data-placement="right" data-original-title="B">B</span></td>
<td>C#</td>
</tr>
</tbody>
</table>
您需要在工具提示函数中使用一些属性 {container:'body', trigger: 'hover', placement:'left'}
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip(
{container:'body', trigger: 'hover', placement:"left"}
);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<!-- jQuery library -->
<!-- Latest compiled JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<table id="example-table" class="table table-striped table-hover table-condensed">
<thead>
<th>Serial</th>
<th>Name</th>
<th>Rating</th>
</thead>
<tbody>
<tr>
<td>1</td>
<td data-toggle="tooltip" data-placement="right" data-original-title="A">A</td>
<td>php</td>
</tr><tr>
<td>2</td>
<td data-toggle="tooltip" data-placement="right" data-original-title="B">B</td>
<td>C#</td>
</tr>
</tbody>
</table>
from CSS 只需从正文或 HTML 标签中删除 "position: relative"。
它会很好用。
我正在使用 twitter bootstrap 3
显示 tooltip
<td class = "skills" data-toggle="tooltip" data-placement="left" data-original-title="<?php echo $row['skills']; ?>"><?php echo $row['skills']; ?></td>
它显示得很好,但是当我将鼠标悬停在它上面时,它会将每个单元格向右移动。
如何解决?
我附上了两张快照,你可以看到它在向右移动。
编辑
我在此处添加一个测试 table,它的作用是在下一个 td
中显示工具提示,并且 td
的数据向右移动。
<table id="example-table" class="table table-striped table-hover table-condensed">
<thead>
<th>Serial</th>
<th>Name</th>
<th>Rating</th>
</thead>
<tbody>
<tr>
<td>1</td>
<td data-toggle="tooltip" data-placement="right" data-original-title="A">A</td>
<td>php</td>
</tr><tr>
<td>2</td>
<td data-toggle="tooltip" data-placement="right" data-original-title="B">B</td>
<td>C#</td>
</tr>
</tbody>
</table>
这里是js
<script type="text/javascript">
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip();
});
</script>
我找到了解决方案,只是张贴在这里,以便有一天有人会发现它有用。
所以,任何人如果遇到这个问题,我的意思是如果在使用 twitter-bootstrap tooltip
时在悬停时移动数据并且按钮在悬停时弹跳,您只需要执行以下操作:
上一个
<script type="text/javascript">
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip();
});
</script>
只需要添加容器(在bootstrap 2.3中修复)
<script type="text/javascript">
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip({container: 'body'});
});
</script>
好的,问题是 tooltip
默认情况下插入在具有 属性 的 html
元素之后。由于工具提示是 div
元素破坏了您的 table:
结构如下:
<td></td>
<div></div>
<td></td>
无效。您需要更改该行为,更改具有 tooltip
:
$('[data-toggle="tooltip"]').tooltip({container:'body'});
BootplyDemo
不要直接用于 td 使用 span 标签希望它能起作用:
<table id="example-table" class="table table-striped table-hover table-condensed">
<thead>
<th>Serial</th>
<th>Name</th>
<th>Rating</th>
</thead>
<tbody>
<tr>
<td>1</td>
<td><span data-toggle="tooltip" data-placement="right" data-original-title="A">A</span></td>
<td>php</td>
</tr><tr>
<td>2</td>
<td><span data-toggle="tooltip" data-placement="right" data-original-title="B">B</span></td>
<td>C#</td>
</tr>
</tbody>
</table>
您需要在工具提示函数中使用一些属性 {container:'body', trigger: 'hover', placement:'left'}
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip(
{container:'body', trigger: 'hover', placement:"left"}
);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<!-- jQuery library -->
<!-- Latest compiled JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<table id="example-table" class="table table-striped table-hover table-condensed">
<thead>
<th>Serial</th>
<th>Name</th>
<th>Rating</th>
</thead>
<tbody>
<tr>
<td>1</td>
<td data-toggle="tooltip" data-placement="right" data-original-title="A">A</td>
<td>php</td>
</tr><tr>
<td>2</td>
<td data-toggle="tooltip" data-placement="right" data-original-title="B">B</td>
<td>C#</td>
</tr>
</tbody>
</table>
from CSS 只需从正文或 HTML 标签中删除 "position: relative"。
它会很好用。