跳转到内容

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

来自osm&bio
Magezeya留言 | 贡献
无编辑摘要
Magezeya留言 | 贡献
无编辑摘要
第1行: 第1行:
<noinclude>全国生物学奥林匹克竞赛联赛倒计时模板</noinclude>
<includeonly>
<includeonly>
<!-- 确定目标日期 -->
<!-- 主容器 -->
{{#vardefine:target_date|
<div style="font-family: 'Segoe UI', system-ui, sans-serif; max-width: 500px; margin: 20px auto; text-align: center; background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%); color: white; padding: 25px; border-radius: 15px; box-shadow: 0 5px 15px rgba(0,0,0,0.1);">
    {{#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
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2036-05-11}} | 2036-05-11
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2037-05-10}} | 2037-05-10
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2038-05-09}} | 2038-05-09
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2039-05-08}} | 2039-05-08
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2040-05-13}} | 2040-05-13
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2041-05-12}} | 2041-05-12
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2042-05-11}} | 2042-05-11
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2043-05-10}} | 2043-05-10
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2044-05-08}} | 2044-05-08
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2045-05-14}} | 2045-05-14
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2046-05-13}} | 2046-05-13
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2047-05-12}} | 2047-05-12
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2048-05-10}} | 2048-05-10
    | {{#ifexpr: {{#time:U}} <= {{#time:U|2049-05-09}} | 2049-05-09
    | 2050-05-08 <!-- 默认值 -->
    }}}}}}}}}}}}}}}}}}}}}}}}}
}}


<!-- 获取目标年份 -->
<!-- 标题 -->
{{#vardefine:target_year|{{#time:Y|{{#var:target_date}}}}}}
<h1 style="margin: 0 0 15px; font-size: 1.8em; text-shadow: 1px 1px 3px rgba(0,0,0,0.2);">全国生物学竞赛倒计时</h1>
<p style="margin: 0 0 20px; opacity: 0.9;">每年的五月第二个星期日</p>


<!-- 简约样式倒计时 -->
<!-- 倒计时显示 -->
<div style="
<div style="background: rgba(255,255,255,0.15); padding: 15px; border-radius: 10px; backdrop-filter: blur(5px);">
  position: relative;
   <div style="font-size: 0.9em; margin-bottom: 10px; opacity: 0.8;">距离{{#switch: {{CURRENTYEAR}}
  max-width: 320px;
     {{#ifexpr: {{#time: n}} > 5 or ({{#time: n}} = 5 and {{#time: j}} > {{#switch: {{CURRENTYEAR}}
  margin: 1.5em auto;
      |2024=12
  padding: 1.8em 1.2em;
      |2025=11
  border-radius: 12px;
      |2026=10
  background: linear-gradient(to bottom, #2c3e50, #1a2a3a);
      |2027=9
  color: #ecf0f1;
      |2028=14
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
      |2029=13
  text-align: center;
      |2030=12
  box-shadow:  
      |#default=12
    0 4px 8px rgba(0, 0, 0, 0.3),
     }})}}
    inset 0 0 10px rgba(0, 0, 0, 0.2);
      |{{#expr: {{CURRENTYEAR}} + 1}}
  border: 1px solid rgba(100, 150, 200, 0.3);
     |{{CURRENTYEAR}}
  overflow: hidden;
   {{/ifexpr}}}}年联赛还有</div>
">
  <!-- 标题 -->
   <div style="
    font-size: 1.3em;
    font-weight: 600;
    margin-bottom: 0.8em;
     color: #3498db;
     letter-spacing: 0.5px;
  ">
     全国生物联赛倒计时
   </div>
    
    
  <!-- 年份信息 -->
   <div style="font-size: 2.5em; font-weight: bold; margin: 10px 0; text-shadow: 2px 2px 4px rgba(0,0,0,0.3);">
   <div style="
     {{#switch: {{CURRENTYEAR}}
    font-size: 0.95em;
      {{#ifexpr: {{#time: n}} > 5 or ({{#time: n}} = 5 and {{#time: j}} > {{#switch: {{CURRENTYEAR}}
    margin-bottom: 0.5em;
        |2024=12
     color: #bdc3c7;
        |2025=11
  ">
        |2026=10
    距离 {{#var:target_year}} 年联赛还有
        |2027=9
        |2028=14
        |2029=13
        |2030=12
        |#default=12
      }})}}
        |{{Countdown|{{#switch: {{#expr: {{CURRENTYEAR}} + 1}}
          |2024=2024-05-12
          |2025=2025-05-11
          |2026=2026-05-10
          |2027=2027-05-09
          |2028=2028-05-14
          |2029=2029-05-13
          |2030=2030-05-12
          |#default=2030-05-12
        }}|text=天}}
      |{{Countdown|{{#switch: {{CURRENTYEAR}}
          |2024=2024-05-12
          |2025=2025-05-11
          |2026=2026-05-10
          |2027=2027-05-09
          |2028=2028-05-14
          |2029=2029-05-13
          |2030=2030-05-12
          |#default=2030-05-12
        }}|text=天}}
    {{/ifexpr}}
   </div>
   </div>
    
    
  <!-- 倒计时数字 -->
   <div style="font-size: 0.9em; opacity: 0.8;">
   <div style="
     {{#switch: {{CURRENTYEAR}}
    font-size: 2.5em;
      {{#ifexpr: {{#time: n}} > 5 or ({{#time: n}} = 5 and {{#time: j}} > {{#switch: {{CURRENTYEAR}}
    font-weight: 700;
        |2024=12
    padding: 0.3em 0.5em;
        |2025=11
     margin: 0.3em auto;
        |2026=10
    background: rgba(30, 40, 55, 0.7);
        |2027=9
    border-radius: 8px;
        |2028=14
    display: inline-block;
        |2029=13
    color: #ecf0f1;
        |2030=12
    text-shadow: 0 0 6px rgba(52, 152, 219, 0.7);
        |#default=12
    box-shadow:
       }})}}
      inset 0 0 8px rgba(0, 0, 0, 0.6),
        |比赛日期: {{#switch: {{#expr: {{CURRENTYEAR}} + 1}}
       0 0 10px rgba(52, 152, 219, 0.4);
          |2024=2024年5月12日
  ">
          |2025=2025年5月11日
    {{Countdown|{{#var:target_date}}|text=}}
          |2026=2026年5月10日
  </div>
          |2027=2027年5月9日
 
          |2028=2028年5月14日
  <!-- 底部说明 -->
          |2029=2029年5月13日
  <div style="
          |2030=2030年5月12日
    font-size: 0.75em;
          |#default=2030年5月12日
    margin-top: 1.2em;
        }}
    color: #7f8c8d;
      |比赛日期: {{#switch: {{CURRENTYEAR}}
    border-top: 1px solid rgba(127, 140, 141, 0.2);
          |2024=2024年5月12日
    padding-top: 0.5em;
          |2025=2025年5月11日
  ">
          |2026=2026年5月10日
     日期:每年五月第二个星期日
          |2027=2027年5月9日
          |2028=2028年5月14日
          |2029=2029年5月13日
          |2030=2030年5月12日
          |#default=2030年5月12日
        }}
     {{/ifexpr}}
   </div>
   </div>
</div>
<!-- 装饰元素 -->
<div style="margin-top: 20px; display: flex; justify-content: center; gap: 8px;">
  <span style="display: inline-block; width: 12px; height: 12px; background: rgba(255,255,255,0.5); border-radius: 50%;"></span>
  <span style="display: inline-block; width: 12px; height: 12px; background: rgba(255,255,255,0.5); border-radius: 50%;"></span>
  <span style="display: inline-block; width: 12px; height: 12px; background: rgba(255,255,255,0.5); border-radius: 50%;"></span>
</div>
</div>
</div>
</includeonly>
</includeonly>
<noinclude>
== 全国生物学竞赛倒计时模板 ==
这是一个显示全国生物学竞赛倒计时的模板,比赛日期为每年的五月第二个星期日。
=== 使用方法 ===
只需在任意页面插入以下代码:
<pre>
{{全国生物学竞赛倒计时}}
</pre>
=== 功能特点 ===
* 使用查表法预计算2024-2030年的比赛日期
* 自动判断今年是否已过比赛日期,显示下一年的比赛
* 使用现有的Countdown模板显示天数
* 美观的UI设计
=== 维护说明 ===
本模板内置了2024年至2030年的比赛日期,2030年之后需要更新模板。
[[Category:倒计时模板]]
[[Category:教育模板]]
</noinclude>

2025年8月21日 (四) 18:21的版本


全国生物学竞赛倒计时模板

这是一个显示全国生物学竞赛倒计时的模板,比赛日期为每年的五月第二个星期日。

使用方法

只需在任意页面插入以下代码:

{{全国生物学竞赛倒计时}}

功能特点

  • 使用查表法预计算2024-2030年的比赛日期
  • 自动判断今年是否已过比赛日期,显示下一年的比赛
  • 使用现有的Countdown模板显示天数
  • 美观的UI设计

维护说明

本模板内置了2024年至2030年的比赛日期,2030年之后需要更新模板。