javascript - 如何突出显示整行一秒钟

标签 javascript css vue.js dom css-selectors

我来自 jquery 背景,其中选择器易于使用。我想要做的是为 tbody 的第一个 child (只有一张 table )我想突出显示整行一秒钟。我尝试在 tr 上使用 css :first-child 选择器,但我不知道为什么它不起作用。有没有办法在脚本方面做到这一点?使用 vue.js 选择元素?因为它不会向元素添加任何 id(正如 Django 等其他一些框架所做的那样)。这是我的模板:

<v-container v-else grid-list-xl>
      <v-data-table
        :disable-initial-sort="true"
        :rows-per-page-items="[10, 20, 30]"
        :headers="headers"
        :items="data_table"
        class="elevation-1"
      >
        <template v-if="loading" v-slot:no-data>
          <v-alert :value="true" color="warning" icon="warning">
            Trayendo datos del gateway, porfa esperate...
          </v-alert>
        </template>
        <template v-else v-slot:items="props">
          <td><strong>{{ props.item.time }}</strong></td>
          <td>{{ props.item.A }}</td>
          <td>{{ props.item.B }}</td>
          <td>{{ props.item.C }}</td>
        </template>
      </v-data-table>
  </v-container>

这是因为我每分钟左右在表上得到一个新行,我希望用户能够轻松地看到添加了新数据。这是我正在尝试的 CSS:

  tr :first-child {
    color: red;
    background-image:none !important; 
        -o-animation: fadeIt 5s ease-in-out; 
           animation: fadeIt 5s ease-in-out; 
  };

  @-o-keyframes fadeIt {
    0%   { background-color: #FFFFFF; }
    50%  { background-color: #AD301B; }
    100% { background-color: #FFFFFF; }
  }
  @keyframes fadeIt {
    0%   { background-color: #FFFFFF; }
    50%  { background-color: #AD301B; }
    100% { background-color: #FFFFFF; }
  }

最佳答案

您在 tr : first-child 中添加了不需要的空间。

tr:first-child {
  color: red;
  background-image: none;
  -o-animation: fadeIt 5s ease-in-out;
  animation: fadeIt 5s ease-in-out;
}

;
@-o-keyframes fadeIt {
  0% {
    background-color: #FFFFFF;
  }
  50% {
    background-color: #AD301B;
  }
  100% {
    background-color: #FFFFFF;
  }
}

@keyframes fadeIt {
  0% {
    background-color: #FFFFFF;
  }
  50% {
    background-color: #AD301B;
  }
  100% {
    background-color: #FFFFFF;
  }
}
<table>
  <tr>
    <td><strong>1</strong></td>
    <td>2</td>
    <td>2</td>
    <td>2</td>
  </tr>
  <tr>
    <td><strong>1</strong></td>
    <td>2</td>
    <td>2</td>
    <td>2</td>
  </tr>
</table>
看这个solution :

关于javascript - 如何突出显示整行一秒钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56887008/

相关文章:

javascript - 如何在同一页面的 "main image"正下方显示多张图片

javascript - 将项目拖出可放置区域时将其移除

html - CSS 在 Internet Explorer 中不能正常工作? (绝对定位)

css - 新闻 |内容区域不会自动展开

javascript - 为什么 Vue.js/Axios 不渲染我定义的数据?

javascript - Firestore .startAt 无法正常工作

javascript - 动态表每一行的定时器

javascript - 如何通过单击链接来执行 jQuery?

css - MathJax 方程在 jekyll 中是彩色的

docker - 无法从主机访问正在运行的 docker 容器(localhost :8081)