边框不能按预期工作

时间:2016-03-07 06:49:30

标签: html css

我希望thead中的整行有一个指定的边框,但是当我使用边框样式属性时它没有按预期工作。但它正在使用outline属性。这是一段代码:



table.table, table.table * {
			border: none !important;
		}

table.price-table thead tr {
			border: 10px solid blue;
			outline: thin solid red;

  
		}

<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"/>
<table class="table price-table">
  <thead>
    <tr>
      <th>Ticket Type</th>
      <th>Price</th>
    </tr>
  </thead>

  <tbody>
    <tr data-ticket-id=1>
      <td class="category-ticket">Adult</td>
      <td class="price-ticket">RM 20</td>
    </tr>



    <tr data-ticket-id=3>
      <td class="category-ticket">Child</td>
      <td class="price-ticket">RM 15</td>

    </tr>	



  </tr>																
</tbody>
</table>
&#13;
&#13;
&#13;

4 个答案:

答案 0 :(得分:2)

使用border: none !important;会覆盖您的第二个border声明。除非绝对必要,否则不建议使用!important。它使可维护性变得更加困难。有关详细信息see here

答案 1 :(得分:1)

删除以下css:

table.table, table.table * {
            border: none !important;
        }

以上css将影响不显示边框。因为你已经给了table.table *所以,它将针对表的所有元素。而且你已经给了!important所以,没有其他的css会覆盖none css。

table.price-table thead tr {
			border: 10px solid blue;
			outline: thin solid red;

  
		}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"/>
<table class="table price-table">
  <thead>
    <tr>
      <th>Ticket Type</th>
      <th>Price</th>
    </tr>
  </thead>

  <tbody>
    <tr data-ticket-id=1>
      <td class="category-ticket">Adult</td>
      <td class="price-ticket">RM 20</td>
    </tr>



    <tr data-ticket-id=3>
      <td class="category-ticket">Child</td>
      <td class="price-ticket">RM 15</td>

    </tr>	



  </tr>																
</tbody>
</table>

答案 2 :(得分:1)

你的造型

table.table, table.table * {
            border: none !important;
        }

将所有元素border样式覆盖到none,因为您使用的是*。因此,如果您想申请,请将此属性更改为您想要的内容。 并且请避免使用!important,除非它太重要并且您想要覆盖一些库或框架默认样式。

答案 3 :(得分:1)

试试这个作为你的css:

table.table, table.table * {
    }

table.price-table thead tr {
    border: 1px solid red;
    outline: thin solid red;
}

检查它是否有效:https://jsfiddle.net/Aschab/6p6kht43/

作为一个建议,如果你需要!对你的css很重要,你做错了。在盒子外面思考