如何創建:“即將上線”頁面

學習如何使用 CSS 和 JavaScript 創建一張“即將上線”頁面。

親自試一試

如何創建“即將上線”頁面

第一步 - 添加 HTML:

在我們的例子中,我們將使用覆蓋整個頁面的背景圖像,并在圖像中放置一些文本,以便讓用戶知道正在發生什么。

此例演示了如何使用 HTML 和 CSS 創建“即將上線”頁面。請查看下一個例子,了解如何使用 JavaScript 添加“倒計時定時器”。

<div class="bgimg">
  <div class="topleft">
    <p>Logo</p>
  </div>
  <div class="middle">
    <h1>COMING SOON</h1>
    <hr>
    <p id="demo">35 days</p>
  </div>
  <div class="bottomleft">
    <p>Some text</p>
  </div>
</div>

第二步 - 添加 CSS:

/* 將 body 和 html 的高度設置為 100%,以使背景圖像覆蓋整個頁面:*/
body, html {
  height: 100%
}
.bgimg {
  /* 背景圖 */
  background-image: url('/w3images/forestbridge.jpg');
  /* 全屏 */
  height: 100%;
  /* 居中背景圖像 */
  background-position: center;
  /* 放大圖像 */
  background-size: cover;
  /* 添加 position: relative 以啟用圖像內部的絕對定位元素(放置文本) */
  position: relative;
  /* 為 .bgimg 容器內的所有元素添加白色文本顏色 */
  color: white;
  /* 添加字體 */
  font-family: "Courier New", Courier, monospace;
  /* 將字體大小設置為 25 像素 */
  font-size: 25px;
}
/* 在左上角定位文本 */
.topleft {
  position: absolute;
  top: 0;
  left: 16px;
}
/* 在左下角定位文本 */
.bottomleft {
  position: absolute;
  bottom: 0;
  left: 16px;
}
/* 在中間定位文本 */
.middle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
/* 設置 <hr> 元素的樣式 */
hr {
  margin: auto;
  width: 40%;
}

親自試一試

第三步 - 添加 JavaScript:

添加 JavaScript 以創建倒計時器:

// 設置我們正在倒計時的日期
var countDownDate = new Date("Jan 5, 2024 15:37:25").getTime();
// 每 1 秒更新一次倒計時
var x = setInterval(function() {
  // 獲取今天的日期和時間
  var now = new Date().getTime();
  // 計算現在和倒計時日期之間的距離
  var distance = countDownDate - now;
  // 計算天數,小時數,分鐘數和秒數的時間計算
  var days = Math.floor(distance / (1000 * 60 * 60 * 24));
  var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
  var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
  var seconds = Math.floor((distance % (1000 * 60)) / 1000);
  // 在 id="demo" 的元素中顯示結果
  document.getElementById("demo").innerHTML = days + "d " + hours + "h "
  + minutes + "m " + seconds + "s ";
  // 如果倒計時結束,寫一些文本。
  if (distance < 0) {
    clearInterval(x);
    document.getElementById("demo").innerHTML = "EXPIRED";
  }
}, 1000);

親自試一試