BootStrap表格详解

表格

html:

表格标签用table标签表示,每一行由<tr>表示。表格是由行组成,行由列组成,列由<td>单元格组成。

 <table> 
     <tr>
         <td>1</td>
         <td>2</td>
         <td>3</td>
         <td>4</td>
     </tr>
     <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
    </tr>
 </table>

1.

Bootstrap提供了.table类,会对每个td增加padding,相邻之间的td也会有一些间隔,并且增加了水平方向的分割线。

<table class="table">

2.

如果需要加上边框,我们可以再加上.table-bordered类

<table class="table table-bordered">

3.

斑马条纹样式,就是隔行变色效果,使用.table-striped类,这个类不被IE8兼容。

<table class="table .table-striped">

原生js实现这个效果:

<style>
        *{
            padding: 0;
            margin: 0;
           text-align: center;
        }
      .box{
          width: 500px;
          height: 500px;

          position: relative;
          margin: 0 auto;
      }
      .tb{
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%,-50%);
      }
      table{
          /* 边框合并collapse,separate默认不合并 */
           border-collapse: collapse; 
          border-spacing: 0;
            border: 1px solid black;
            width: 500px; 
      }
      th,td{
          border:1px solid #d0d0d0;
          padding: 10px;
          color: #404040;
      }
      th{
          background-color: #09c;
      }
      tbody tr{
          background-color: #f0f0f0;
      }
      .current{
          background-color: red !important;
      }
    </style>
</head>
<body>
    <div class="box">
 <table class="tb"> 
     <thead>
        <tr>
            <th>序号</th>
            <th>姓名</th>
            <th>课程</th>
            <th>成绩</th>
        </tr>
     </thead>
     <tbody id="target">
     <tr>
         <td>1</td>
         <td>2</td>
         <td>3</td>
         <td>4</td>
     </tr>
     <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
    </tr>
    <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
    </tr>
    <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
    </tr>
    <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
    </tr>
</tbody>
 </table>
</div>
</body>
<script>
    const tbody = document.getElementById('target');
    const trArr = tbody.children;
    for(let i=0;i<trArr.length;i++){
        if(i%2 !==0){
            trArr[i].style.backgroundColor = "red";
        }else{
            trArr[i].style.backgroundColor = ""
        }
    }
</script>

在js中先获取tbody以及子元素tr,再用for循环结合if判断,实现了隔行换色。

4.

鼠标悬停在<tbody>每一列做出响应,使用.table-hover类

<table class="table table-hover">

原生js实现:

跟着上面的那个写:

定义一个myColor来存放之前的颜色,悬停后换颜色,移开后重新把myColor赋值回去

<script>
    const tbody = document.getElementById('target');
    const trArr = tbody.children;
    for(let i=0;i<trArr.length;i++){
        if(i%2 !==0){
            trArr[i].style.backgroundColor = "red";
        }else{
            trArr[i].style.backgroundColor = "blue"
        }
   

    var myColor ="";
        trArr[i].onmouseover = function () {
            myColor = this.style.backgroundColor;
            this.style.backgroundColor = "#fff";
        }
      trArr[i].onmouseout = function () {
        this.style.backgroundColor = myColor;
      }
    
     }
</script>

5.

通过添加 .table-condensed 类可以让表格更加紧凑,单元格中的内补(padding)均会减半。

6.

给每一行换颜色,我们可以给tr加类名,可用属性为:

.active 灰色

.success 绿色

.info蓝色

.warning黄色

.danger红色

具体使用为:<tr class="danger">

值得一说的是,BootStrap把这些颜色全部都是淡化处理,就不会那么的鲜亮。

7.创建响应式表格,把.table类放在.table-responsive类里面,当屏幕缩小时会有水平的滚动条出现(小于768px)。

<div class="table-responsive">
  <table class="table">
    ...
  </table>
</div>
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值