Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用CSS更改Javascript计时器_Javascript_Html_Css - Fatal编程技术网

使用CSS更改Javascript计时器

使用CSS更改Javascript计时器,javascript,html,css,Javascript,Html,Css,我想创建以下结果 这是我想要在我的html代码中出现的一个缩进。我用javascript创建了计时器,它工作正常,但我不能让它在我的html中显示为我想要的样子。我希望它显示得与图片完全一样 这是我的密码 我的html <div class="container"> <hr class="new4"> <p class="countdown text-center">Μέχρι

我想创建以下结果

这是我想要在我的html代码中出现的一个缩进。我用javascript创建了计时器,它工作正常,但我不能让它在我的html中显示为我想要的样子。我希望它显示得与图片完全一样

这是我的密码

我的html

<div class="container">
    <hr class="new4">
        <p class="countdown text-center">Μέχρι το δορυφορικό συμπόσιο απομένουν</p>
        <p id="timer" class="timer text-center"></p> 
        
        
        <hr class="new4">
        
    </div>
这就是我的感觉

我无法理解如何使文本以数字为中心,也无法理解如何在javascript document.getElementById函数返回的每个元素之间添加填充。
请帮助我这是紧急情况,我必须等到明天才能使用它。要使每个时间单位成为不同的元素,请更新计时器HTML,如下所示:

document.getElementByIdtimer.innerHTML=` ${days} ${hours} ${minutes} ${seconds} `; 然后使用CSS设置样式,添加边距和表示单位的伪元素:

定时器范围{ 显示:内联块; 利润率:10px; } 计时器范围:之前{ 内容:数据单元; 位置:绝对位置; transform:translateoffsetX,offsetY;/*这里您必须找到正确的X和Y值*/ }
要使数字下的文本正确居中,我建议您使用flexbox

我创建了额外的容器,以便在必要时使用display:flex和used flex direction:column正确地分隔事物,或者在某些地方没有为我的flex容器定义任何值,因为flex direction的默认值是row

请注意,我将计时器分为不同的,并在元素中使用静态值表示天、小时、分钟和秒:

将它们分成不同的可以让我们更好地控制它们的位置。 静态值仅用于说明目的,因为我没有修改您的JavaScript代码。 您必须修改JavaScript代码以分别更新HTML中的每个。 使用修改后的HTML和CSS检查我的代码笔示例:

ΜχριτοΔορφορικόσνμπιαπομέν

22

23

小时

41

min

16

* { 框大小:边框框; 填充:0; 保证金:0; } 人力资源部新闻4{ 边框:1px纯白; } .计时器容器{ 显示器:flex; 弯曲方向:立柱; } .内容容器{ 显示器:flex; 证明内容:周围的空间; } .倒计时{ 字体大小:48px; 字体大小:粗体; 颜色:白色; 自对准:居中; } .单位容器{ 显示器:flex; 弯曲方向:立柱; 对齐项目:居中; } .计时器{ 字体大小:117px; 颜色:白色; } .计时器文本{ 字体大小:60px; 颜色:白色; } 身体{ 背景:194079; }
请注意,除了ISO 8601的某些变体之外,任何格式的解析日期都不能保证跨浏览器工作。可以将日期重新格式化为使用YYYY-MM DDThh:MM:ss格式,也可以使用数字作为参数。您好,您能告诉我如何将文字置于数字的中心吗?变换移动所有文本,我希望每个文本centered@Stefanie为此,您必须尝试不同的转换值,并且您可以使用:nth child为不同的单位应用特定的值。但是看起来@Steve Cruz也有一个很好的解决方案,你应该去看看
// Set the date we're counting down to
var countDownDate = new Date("Sep 19, 2020 16:30:00").getTime();

// Update the count down every 1 second
var x = setInterval(function() {

  // Get today's date and time
  var now = new Date().getTime();
    
  // Find the distance between now and the count down date
  var distance = countDownDate - now;
    
  // Time calculations for days, hours, minutes and seconds
  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);
    
  // Output the result in an element with id="demo"
  document.getElementById("timer").innerHTML = days + " " + hours + " "
  + minutes + " " + seconds + " ";
    
  // If the count down is over, write some text 
  if (distance < 0) {
    clearInterval(x);
    document.getElementById("timer").innerHTML = "Συμβαίνει Τώρα";
  }
}, 1000);
hr.new4 {
  border: 1px solid white;
}

.timer{
    font-size: 117px;
    color:white;
}