当用户将鼠标悬停在文本上方时,我需要在文本旁边显示一个编辑图标(内联)。当我将鼠标悬停在文本上时,编辑图标将在下一行中显示。
我的跨度占据了div宽度的100%,即使我已将其设置为80%宽度,其余20%宽度保留为右侧图标。
跨度风格是,
span{
display: inline-block;max-width:80%;width:80%;
}
看起来像,
如何在文本的同一行右侧显示内嵌图标? Plunker代码为here。
答案 0 :(得分:2)
你可以这样做。
$('document').ready(function(){
console.log('document ready callback fn is invoked')
$('.menu-body').hide()
})
$('body').on('click', '.drp-down-btn', function(){
$('.menu-body').toggle()
})
.cntr{
width: 20%;
overflow: hidden;
white-space: nowrap;
display: block;
}
.cntr i {
visibility: hidden;
opacity: 0;
transition: all 0.4s;
-webkit-transition: all 0.4s;
cursor: pointer;
}
<!-- .cntr:hover{
border: solid black 1px;
} -->
.cntr:hover > i{
display: inline-block;
}
.cntr>span>p{
width: 15%;
overflow:hidden;
vertical-align:middle;
text-overflow: ellipsis;
white-space: nowrap;
}
.cntr span,.cntr p,.cntr i{
display: inline-block;
}
.cntr:hover i{
visibility: visible;
opacity: 1;
}
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<body>
<div class="cntr">
<span>
<p>Hello worldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</p>
<i class="fa fa-edit fa-lg" style="padding-left:5px;border-left: solid black 1px;">
</i>
</span>
</div>
<script src="script.js"></script>
</body>
答案 1 :(得分:0)
span
是内联元素,除非将其显示为块,否则无法为其添加宽度。
<div>
<span style="display:inline-block; width:80%;">Hello Hello Hello</span>
<i style="display:inline-block; padding-left:5px;float: right; border-left: solid black 1px; width: 15%;">ICON</i>
</div>