用HTML和JS编写一张表格居中,表头数据为当前一周的实时时间的网页
时间: 2024-02-20 13:56:50 浏览: 100
好的,以下是一个HTML和JS代码实现您的需求:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>表格示例</title>
<style>
table {
margin: auto;
border-collapse: collapse;
}
th, td {
border: 1px solid black;
padding: 8px;
text-align: center;
}
th {
background-color: #ddd;
}
</style>
</head>
<body onload="generateTable()">
<table id="myTable">
<thead>
<tr>
<th>周一</th>
<th>周二</th>
<th>周三</th>
<th>周四</th>
<th>周五</th>
<th>周六</th>
<th>周日</th>
</tr>
</thead>
<tbody>
<tr>
<td id="monday"></td>
<td id="tuesday"></td>
<td id="wednesday"></td>
<td id="thursday"></td>
<td id="friday"></td>
<td id="saturday"></td>
<td id="sunday"></td>
</tr>
</tbody>
</table>
<script>
function generateTable() {
var daysOfWeek = ["日", "一", "二", "三", "四", "五", "六"];
var table = document.getElementById("myTable");
var row = table.getElementsByTagName("tr")[1];
var today = new Date();
for (var i = 0; i < 7; i++) {
var cell = row.getElementsByTagName("td")[i];
var date = new Date();
date.setDate(today.getDate() + i);
var month = date.getMonth() + 1;
var day = date.getDate();
var weekday = "周" + daysOfWeek[date.getDay()];
cell.innerHTML = month + "/" + day + " " + weekday;
}
}
</script>
</body>
</html>
```
在上面的代码中,我们使用了 `table` 元素来创建一个表格,然后使用 CSS 的 `margin: auto` 属性将表格居中显示。`border-collapse: collapse` 属性是用来将表格的边框合并,使表格看起来更整洁。`th` 和 `td` 元素分别用来创建表头和表格数据,使用了 `border` 属性来设置边框样式,使用了 `padding` 属性来设置内容和边框之间的间距,使用了 `text-align: center` 属性来将内容居中显示。最后,我们使用了 `background-color` 属性来设置表头的背景色。
在 `body` 元素的 `onload` 属性中,我们调用了 `generateTable()` 函数。该函数会获取当前时间,并根据当前时间生成一周的日期和星期,并将其插入到表格中。
在 `generateTable()` 函数中,我们首先定义了一个数组 `daysOfWeek`,用来存储星期的中文表示。然后,我们获取了表格中第二行的单元格,并使用 `new Date()` 创建了一个日期对象 `today`。接着,我们使用循环语句遍历每个单元格,并根据当前日期生成该单元格应该显示的日期和星期,并将其插入到单元格中。最后,我们使用 `innerHTML` 属性将生成的日期和星期显示在单元格中。
阅读全文