text-decoration: underline
を使用する 2 つのスパンで問題が発生していますinline-block
。[問題は、ホバーしたときに URL の一部のみに下線が引かれ、他の部分には下線が付かないことです。表示プロパティを保持する必要があります。それ以外の場合text-overflow
は適用されません (参照:テキストオーバーフロー: 省略記号の配置の問題)
HTML:
<div class="details" itemscope itemtype="http://data-vocabulary.org/Product">
<h2>
<a class="heading" href="/product/acmesw" title="Acme Super Widget">
<span class="trunc" itemprop="name">Acme Super Widget 3000</span>
<span itemprop="offerDetails" itemscope itemtype="http://data-vocabulary.org/Offer">- <meta itemprop="currency" content="AUD" /><spanitemprop="price">$199.95</span></span>
</a>
</h2>
</div>
CSS:
.details {
width:300px;
border:1px solid red;
}
.trunc {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
max-width:60%;
}
h2 span {
display:inline-block;
vertical-align:top;
}
a:hover{
text-decoration:underline;
color:red;
}
jsFiddle: http://jsfiddle.net/c7p8w/2/