it-swarm.com.ru

Как скрыть границу для указанных строк таблицы?

Я хочу скрыть границу для определенных строк таблицы. Как это сделать?
Любая идея?
Пример кода высоко ценится.

23
Mr.Chowdary

Используйте границу свойства CSS на <td>s, следующих за <tr>s, у которых вы не хотите иметь границу. 

В моем примере я создал класс noBorder, который я дал одному <tr>. Затем я использую простой селектор tr.noBorder td, чтобы убрать границу для всех <td>, которые находятся внутри <tr>s с классом noBorder, назначив border: 0

Обратите внимание, что вам не нужно указывать единицу (т.е. px), если вы устанавливаете что-то на 0, так как в любом случае это не имеет значения. Ноль это просто ноль.

table, tr, td {
  border: 3px solid red;
}
tr.noBorder td {
  border: 0;
}
<table>
  <tr>
    <td>A1</td>
    <td>B1</td>
    <td>C1</td>
  </tr>
  <tr class="noBorder">
    <td>A2</td>
    <td>B2</td>
    <td>C2</td>
  </tr>
  <tr>
    <td>A3</td>
    <td>A3</td>
    <td>A3</td>
  </tr>
</table>

Вот вывод в виде изображения:

Output from HTML

36
simbabque

Я использую это с хорошими результатами:

border-style:hidden;

Это также работает для:

border-right-style:hidden; /*if you want to hide just a border on a cell*/

Пример:

<style type="text/css">
      table, th, td {
       border: 2px solid green;
      }
      tr.hide_right > td, td.hide_right{
        border-right-style:hidden;
      }
      tr.hide_all > td, td.hide_all{
        border-style:hidden;
      }
  }
</style>
<table>
  <tr>
    <td class="hide_right">11</td>
    <td>12</td>
    <td class="hide_all">13</td>
  </tr>
  <tr class="hide_right">
    <td>21</td>
    <td>22</td>
    <td>23</td>
  </tr>
  <tr class="hide_all">
    <td>31</td>
    <td>32</td>
    <td>33</td>
  </tr>
</table>

Вот результат:  enter image description here

11
Carlos Toledo

Вы можете просто добавить эти строки кода здесь, чтобы скрыть строку,

Либо вы можете написать border:0 или border-style:hidden;border: none, либо произойдет то же самое

<style type="text/css">
              table, th, td {
               border: 1px solid;
              }
              
              tr.hide_all > td, td.hide_all{
                 border: 0;
                
              }
          }
        </style>
    <table>
      <tr>
        <th>Firstname</th>
        <th>Lastname</th>
        <th>Savings</th>
      </tr>
      <tr>
        <td>Peter</td>
        <td>Griffin</td>
        <td>$100</td>
      </tr>
      <tr class= hide_all>
        <td>Lois</td>
        <td>Griffin</td>
        <td>$150</td>
      </tr>
      <tr>
        <td>Joe</td>
        <td>Swanson</td>
        <td>$300</td>
      </tr>
      <tr>
        <td>Cleveland</td>
        <td>Brown</td>
        <td>$250</td>
      </tr>
    </table>

запуск этих строк кода может легко решить проблему

1
Pronab Roy

Добавьте программно класс noborder к определенной строке, чтобы скрыть его

<style>
     .noborder
      {
        border:none;
      }
    </style>

<table>

    <tr>
       <th>heading1</th>
       <th>heading2</th>
    </tr>


    <tr>
       <td>content1</td>
       <td>content2</td>
    </tr>
    /*no border for this row */
    <tr class="noborder">
       <td>content1</td>
       <td>content2</td>
    </tr>

</table>
0
vikrantx