跳转到内容

模板:生物联赛倒计时:修订间差异

来自osm&bio
Magezeya留言 | 贡献
无编辑摘要
Magezeya留言 | 贡献
无编辑摘要
第1行: 第1行:
<includeonly>
🧬
<div class="biology-olympiad-countdown">
全国中学生生物学联赛倒计时
  <div class="countdown-header">
距离{{{text|全国奥林匹克生物学联赛}}}还有
    <div class="dna-icon">🧬</div>
{{#ifexpr: {{#time:U}} < {{#time:U|2025-05-11}} | {{#switch: {{{time|day}}} | day =
    <h3>全国中学生生物学联赛倒计时</h3>
{{#expr: floor(({{#time:U|2025-05-11}} - {{#time:U}})/86400)}}
  </div>
 
| hour =
  <div class="countdown-content">
{{#expr: floor(({{#time:U|2025-05-11}} - {{#time:U}})/3600)}}
    <div class="countdown-text">
小时
      距离{{{text|全国中学生生物学联赛}}}还有
| minute =
    </div>
{{#expr: floor(({{#time:U|2025-05-11}} - {{#time:U}})/60)}}
   
分钟
    <div class="countdown-timer">
| second =
      {{#if: {{{time|}}} |  
{{#expr: {{#time:U|2025-05-11}} - {{#time:U}}}}
        {{#switch: {{{time}}}
          | day = <span class="countdown-number">{{#expr: floor( ( {{#time: U | {{#invoke:BiologyOlympiadDates|getNextDate}} }} - {{#time: U}} ) / 86400 ) }}</span><span class="countdown-unit">天</span>
}} | {{#ifexpr: {{#time:U}} < {{#time:U|2026-05-10}} | {{#switch: {{{time|day}}} | day =
          | hour = <span class="countdown-number">{{#expr: floor( ( {{#time: U | {{#invoke:BiologyOlympiadDates|getNextDate}} }} - {{#time: U}} ) / 3600 ) }}</span><span class="countdown-unit">小时</span>
{{#expr: floor(({{#time:U|2026-05-10}} - {{#time:U}})/86400)}}
          | minute = <span class="countdown-number">{{#expr: floor( ( {{#time: U | {{#invoke:BiologyOlympiadDates|getNextDate}} }} - {{#time: U}} ) / 60 ) }}</span><span class="countdown-unit">分钟</span>
          | second = <span class="countdown-number">{{#expr: ( {{#time: U | {{#invoke:BiologyOlympiadDates|getNextDate}} }} - {{#time: U}} ) }}</span><span class="countdown-unit"></span>
| hour =
        }}
{{#expr: floor(({{#time:U|2026-05-10}} - {{#time:U}})/3600)}}
      | <span class="countdown-number">{{#expr: floor( ( {{#time: U | {{#invoke:BiologyOlympiadDates|getNextDate}} }} - {{#time: U}} ) / 86400 ) }}</span><span class="countdown-unit">天</span>
小时
      }}
| minute =
    </div>
{{#expr: floor(({{#time:U|2026-05-10}} - {{#time:U}})/60)}}
   
分钟
    <div class="countdown-date">
| second =
      下一届联赛日期: {{#invoke:BiologyOlympiadDates|getNextDate}}
{{#expr: {{#time:U|2026-05-10}} - {{#time:U}}}}
    </div>
  </div>
}} | {{#ifexpr: {{#time:U}} < {{#time:U|2027-05-09}} | {{#switch: {{{time|day}}} | day =
 
{{#expr: floor(({{#time:U|2027-05-09}} - {{#time:U}})/86400)}}
  <div class="countdown-footer">
    <small>全国中学生生物学竞赛委员会</small>
| hour =
  </div>
{{#expr: floor(({{#time:U|2027-05-09}} - {{#time:U}})/3600)}}
</div>
小时
 
| minute =
<style>
{{#expr: floor(({{#time:U|2027-05-09}} - {{#time:U}})/60)}}
.biology-olympiad-countdown {
分钟
  background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%);
| second =
  border-radius: 12px;
{{#expr: {{#time:U|2027-05-09}} - {{#time:U}}}}
  padding: 20px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}} | {{#ifexpr: {{#time:U}} < {{#time:U|2028-05-14}} | {{#switch: {{{time|day}}} | day =
  border: 1px solid #81c784;
{{#expr: floor(({{#time:U|2028-05-14}} - {{#time:U}})/86400)}}
  font-family: 'Helvetica Neue', Arial, sans-serif;
  max-width: 400px;
| hour =
  margin: 10px auto;
{{#expr: floor(({{#time:U|2028-05-14}} - {{#time:U}})/3600)}}
  text-align: center;
小时
  position: relative;
| minute =
  overflow: hidden;
{{#expr: floor(({{#time:U|2028-05-14}} - {{#time:U}})/60)}}
}
分钟
 
| second =
.biology-olympiad-countdown::before {
{{#expr: {{#time:U|2028-05-14}} - {{#time:U}}}}
  content: "";
  position: absolute;
}} | {{#ifexpr: {{#time:U}} < {{#time:U|2029-05-13}} | {{#switch: {{{time|day}}} | day =
  top: 0;
{{#expr: floor(({{#time:U|2029-05-13}} - {{#time:U}})/86400)}}
  left: 0;
  right: 0;
| hour =
  height: 4px;
{{#expr: floor(({{#time:U|2029-05-13}} - {{#time:U}})/3600)}}
  background: linear-gradient(90deg, #4caf50, #8bc34a, #cddc39);
小时
}
| minute =
 
{{#expr: floor(({{#time:U|2029-05-13}} - {{#time:U}})/60)}}
.countdown-header {
分钟
  display: flex;
| second =
  align-items: center;
{{#expr: {{#time:U|2029-05-13}} - {{#time:U}}}}
  justify-content: center;
  margin-bottom: 15px;
}} | {{#ifexpr: {{#time:U}} < {{#time:U|2030-05-12}} | {{#switch: {{{time|day}}} | day =
}
{{#expr: floor(({{#time:U|2030-05-12}} - {{#time:U}})/86400)}}
 
.dna-icon {
| hour =
  font-size: 28px;
{{#expr: floor(({{#time:U|2030-05-12}} - {{#time:U}})/3600)}}
  margin-right: 10px;
小时
}
| minute =
 
{{#expr: floor(({{#time:U|2030-05-12}} - {{#time:U}})/60)}}
.countdown-header h3 {
分钟
  margin: 0;
| second =
  color: #2e7d32;
{{#expr: {{#time:U|2030-05-12}} - {{#time:U}}}}
  font-size: 18px;
  font-weight: 600;
}} | {{#ifexpr: {{#time:U}} < {{#time:U|2031-05-11}} | {{#switch: {{{time|day}}} | day =
}
{{#expr: floor(({{#time:U|2031-05-11}} - {{#time:U}})/86400)}}
 
.countdown-content {
| hour =
  margin: 15px 0;
{{#expr: floor(({{#time:U|2031-05-11}} - {{#time:U}})/3600)}}
}
小时
 
| minute =
.countdown-text {
{{#expr: floor(({{#time:U|2031-05-11}} - {{#time:U}})/60)}}
  color: #388e3c;
分钟
  font-size: 16px;
| second =
  margin-bottom: 10px;
{{#expr: {{#time:U|2031-05-11}} - {{#time:U}}}}
}
 
}} | {{#ifexpr: {{#time:U}} < {{#time:U|2032-05-09}} | {{#switch: {{{time|day}}} | day =
.countdown-timer {
{{#expr: floor(({{#time:U|2032-05-09}} - {{#time:U}})/86400)}}
  display: flex;
  justify-content: center;
| hour =
  align-items: baseline;
{{#expr: floor(({{#time:U|2032-05-09}} - {{#time:U}})/3600)}}
  margin: 15px 0;
小时
}
| minute =
 
{{#expr: floor(({{#time:U|2032-05-09}} - {{#time:U}})/60)}}
.countdown-number {
分钟
  font-size: 36px;
| second =
  font-weight: bold;
{{#expr: {{#time:U|2032-05-09}} - {{#time:U}}}}
  color: #d32f2f;
  margin: 0 5px;
}} | {{#ifexpr: {{#time:U}} < {{#time:U|2033-05-08}} | {{#switch: {{{time|day}}} | day =
  animation: pulse 2s infinite;
{{#expr: floor(({{#time:U|2033-05-08}} - {{#time:U}})/86400)}}
}
 
| hour =
.countdown-unit {
{{#expr: floor(({{#time:U|2033-05-08}} - {{#time:U}})/3600)}}
  font-size: 18px;
小时
  color: #555;
| minute =
  margin-left: 5px;
{{#expr: floor(({{#time:U|2033-05-08}} - {{#time:U}})/60)}}
}
分钟
 
| second =
.countdown-date {
{{#expr: {{#time:U|2033-05-08}} - {{#time:U}}}}
  color: #689f38;
  font-size: 14px;
}} | {{#ifexpr: {{#time:U}} < {{#time:U|2034-05-14}} | {{#switch: {{{time|day}}} | day =
  margin-top: 10px;
{{#expr: floor(({{#time:U|2034-05-14}} - {{#time:U}})/86400)}}
  font-style: italic;
}
| hour =
 
{{#expr: floor(({{#time:U|2034-05-14}} - {{#time:U}})/3600)}}
.countdown-footer {
小时
  border-top: 1px solid #a5d6a7;
| minute =
  padding-top: 10px;
{{#expr: floor(({{#time:U|2034-05-14}} - {{#time:U}})/60)}}
  margin-top: 15px;
分钟
}
| second =
 
{{#expr: {{#time:U|2034-05-14}} - {{#time:U}}}}
.countdown-footer small {
  color: #78909c;
}} | {{#ifexpr: {{#time:U}} < {{#time:U|2035-05-13}} | {{#switch: {{{time|day}}} | day =
  font-size: 12px;
{{#expr: floor(({{#time:U|2035-05-13}} - {{#time:U}})/86400)}}
}
 
| hour =
@keyframes pulse {
{{#expr: floor(({{#time:U|2035-05-13}} - {{#time:U}})/3600)}}
  0% { transform: scale(1); }
小时
  50% { transform: scale(1.05); }
| minute =
  100% { transform: scale(1); }
{{#expr: floor(({{#time:U|2035-05-13}} - {{#time:U}})/60)}}
}
分钟
 
| second =
@media (max-width: 480px) {
{{#expr: {{#time:U|2035-05-13}} - {{#time:U}}}}
  .biology-olympiad-countdown {
    padding: 15px;
}} | {{#switch: {{{time|day}}} | day =
    margin: 10px;
{{#expr: floor(({{#time:U|2035-05-13}} - {{#time:U}})/86400)}}
  }
 
| hour =
  .countdown-number {
{{#expr: floor(({{#time:U|2035-05-13}} - {{#time:U}})/3600)}}
    font-size: 28px;
小时
  }
| minute =
 
{{#expr: floor(({{#time:U|2035-05-13}} - {{#time:U}})/60)}}
  .countdown-header h3 {
分钟
    font-size: 16px;
| second =
  }
{{#expr: {{#time:U|2035-05-13}} - {{#time:U}}}}
}
</style>
}} }}}}}}}}}}}}
</includeonly>
下一届联赛日期: {{#ifexpr: {{#time:U}} < {{#time:U|2025-05-11}} | 2025-05-11 | {{#ifexpr: {{#time:U}} < {{#time:U|2026-05-10}} | 2026-05-10 | {{#ifexpr: {{#time:U}} < {{#time:U|2027-05-09}} | 2027-05-09 | {{#ifexpr: {{#time:U}} < {{#time:U|2028-05-14}} | 2028-05-14 | {{#ifexpr: {{#time:U}} < {{#time:U|2029-05-13}} | 2029-05-13 | {{#ifexpr: {{#time:U}} < {{#time:U|2030-05-12}} | 2030-05-12 | {{#ifexpr: {{#time:U}} < {{#time:U|2031-05-11}} | 2031-05-11 | {{#ifexpr: {{#time:U}} < {{#time:U|2032-05-09}} | 2032-05-09 | {{#ifexpr: {{#time:U}} < {{#time:U|2033-05-08}} | 2033-05-08 | {{#ifexpr: {{#time:U}} < {{#time:U|2034-05-14}} | 2034-05-14 | {{#ifexpr: {{#time:U}} < {{#time:U|2035-05-13}} | 2035-05-13 | 2035-05-13 }} }} }} }} }} }} }} }} }} }} }}
 
全国中学生生物学竞赛委员会
<noinclude>
{{documentation}}
</noinclude>

2025年8月22日 (五) 12:10的版本

🧬 全国中学生生物学联赛倒计时 距离全国奥林匹克生物学联赛还有 {{#ifexpr: 1770195740 < 1746921600 | -270 天 | {{#ifexpr: 1770195740 < 1778371200 | 94 天 | {{#ifexpr: 1770195740 < 1809820800 | 458 天 | {{#ifexpr: 1770195740 < 1841875200 | 829 天 | {{#ifexpr: 1770195740 < 1873324800 | 1193 天 | 1557 天 下一届联赛日期: 2026-05-10 全国中学生生物学竞赛委员会