2017-05-06 10 views
0

最初のセルには省略記号を適用する必要があります(最初のセルは残りのスペースを埋める必要があります)が、テーブルは親divの外になります。どうすればそれを動作させることができますか?テーブルセルで省略記号が機能しない

.wrapper { 
 
    width:200px; 
 
    background: wheat; 
 
} 
 

 
.el-cell { 
 
    width:99%; 
 
    display: block; 
 
} 
 
.table { 
 
    width: 100%; 
 
} 
 

 
.no-wrap { 
 
    white-space: nowrap; 
 
} 
 

 
.el { 
 
    overflow: hidden; 
 
    text-overflow: ellipsis; 
 
    white-space: nowrap; 
 
}
<div class="wrapper"> 
 
    <table class="table"> 
 
    <tr> 
 
     <td class="el-cell"> 
 
     <div class="el"> 
 
      <span>first cell should ellipsis aaaaaaa bbbb ccccccc</span> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <span class="no-wrap">2nd cell</span> 
 
     </td> 
 
    </tr> 
 
    </table> 
 
</div>

答えて

1

属性top: 0left: 0

.wrapper { 
 
    width:200px; 
 
    background: wheat; 
 
} 
 

 
.el-cell { 
 
    width:99%; 
 
    position: relative; 
 
} 
 

 
.el span{ 
 
    position: absolute; 
 
    top: 0; 
 
    left: 0; 
 
    width: 100%; 
 
    overflow: hidden; 
 
    text-overflow: ellipsis; 
 
    white-space: nowrap; 
 
}
<div class="wrapper"> 
 
    <table class="table"> 
 
    <tr> 
 
     <td class="el-cell"> 
 
     <div class="el"> 
 
      <span>first cell should ellipsis aaaaaaa bbbb ccccccc</span> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <span class="no-wrap">2nd cell</span> 
 
     </td> 
 
    </tr> 
 
    </table> 
 
</div>

0

だけtable-layout: fixedを追加します。

+0

'テーブルレイアウトでspan.el-cellposition: absoluteposition: relativeを追加:fixed' brokesは99%幅 - 細胞は、テーブルの半分を埋めます。 – pwas

+0

他のセルに1%の幅を設定しないのはなぜですか?あなたは本当に各セルの中にたくさんの要素が必要ですか?最終目標は何ですか? 200ピクセルの1%は小さすぎる(2ピクセル)ことに注意してください。 – Dimcho

+0

'99%'は、最初のセルの空き領域全体を空にします。つまり、2番目のセルは1%ではないため、その子の幅があります。 – pwas

関連する問題