Files
mama-box/topic/zhichang/index.html
deploy 4ac45a6db4 v26110803 孕期百宝箱内容核查修改(百问 / 计算器 / 测一测)
- 育儿补贴:2025 年前出生的满 3 周岁当月计入(2022-01 出生可领 1 个月)
- 心理类测试 t13/t14/t17:结果页加「不是诊断」+ 12356 热线,最低档加危机提示;t14、t17 移出「刚测出」滚动;t14 补觉计分、t17 胎动题替换
- 孕期压力:倒数第二档加求助提示,最高档改为尽快就医 + 12356
- 百问:钙铁按 DRIs 2023、叶酸持续整个孕期、胎动 28 周起数、首检血糖、筛查/确诊、生育津贴直发个人账户、对乙酰氨基酚口径等;预置评论人设穿帮修正
- 计算器:生育津贴拆国家/本省、陕西 +10 天、新生儿医保 90 天、糖耐可补做、身高去掉无依据加减、花费幼儿园大班免保教费等
- hot.json 答案摘要同步;核查清单见 research/audit-1108

Co-Authored-By: AI 助手 <noreply@local>
2026-11-08 01:34:33 +00:00

588 lines
40 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no,viewport-fit=cover">
<meta name="format-detection" content="telephone=no">
<title>孕期被调岗、降薪,公司这样做合法吗?</title>
<!-- 孕期专题 · 职场维权(孕期首页「其他妈妈也在搜」第 5 条)。
2026-10-31 v3:在 v2「清新简洁」基础上加设计感——渐变 hero + 结论卡、描边数字卡、三段权益时间轴、产假刻度条、编号步骤卡、推荐工具(_shared/tools.js)。主色 #5B6CFF。
只写全国通用法条(《女职工劳动保护特别规定》《劳动合同法》《妇女权益保障法》《社会保险法》《劳动争议调解仲裁法》),
地方差异一律写「以当地规定为准」。自成一页:不引 app.js;返回兜底走相对路径 ../../ 并带回 search + hash。 -->
<style>
:root{--c:#5B6CFF;--cbg:#EEF0FF;--c4:#F8F9FF;--h:#1F2329;--t:#4E5969;--m:#86909C;--line:#EEF0F3;--sec:#F7F8FA}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html,body{height:100%;overflow:hidden;background:#fff;color:var(--t);font:15px/1.75 -apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif}
#scroll{position:fixed;inset:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:none;padding-bottom:calc(28px + env(safe-area-inset-bottom))}
img{display:block;max-width:100%}
button,input{font:inherit;border:0;background:none;color:inherit}
button{cursor:pointer}
b{color:var(--h)}
.num{font-variant-numeric:tabular-nums}
.ic{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hide{position:absolute;width:0;height:0;overflow:hidden}
/* 顶栏 */
.bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:4px;height:48px;padding:0 8px;padding-top:env(safe-area-inset-top);background:rgba(255,255,255,0);border-bottom:1px solid transparent;transition:background .2s,border-color .2s}
.bar.on{background:#fff;border-bottom-color:var(--line)}
.bar .back{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--h)}
.bar .back:active{transform:scale(.94)}
.bar .back .ic{width:22px;height:22px}
.bar .t{font-weight:600;font-size:16px;color:var(--h)}
/* Hero */
.hero{position:relative;overflow:hidden;margin-top:-48px;padding:62px 20px 24px;background:linear-gradient(160deg,var(--cbg) 0%,#fff 70%)}
.blob{position:absolute;border-radius:50%;background:var(--c);pointer-events:none}
.blob.b1{width:220px;height:220px;right:-70px;top:-60px;opacity:.08}
.blob.b2{width:120px;height:120px;left:-50px;top:210px;opacity:.06}
.eyebrow{position:relative;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--c);letter-spacing:.06em}
.eyebrow::before{content:"";width:16px;height:2px;border-radius:2px;background:var(--c)}
h1{position:relative;margin-top:8px;font-size:28px;font-weight:800;line-height:1.3;color:var(--h)}
.mk{background:linear-gradient(transparent 62%,rgba(91,108,255,.2) 0)}
.pic{position:relative;margin:14px -20px 0 auto;width:80%;height:176px;border-radius:24px 0 0 24px;overflow:hidden}
.pic img{width:100%;height:100%;object-fit:cover;object-position:center 32%}
.ans{position:relative;margin:-40px 28px 0 0;padding:14px 16px 16px;border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(91,108,255,.10)}
.tag{display:inline-block;font-size:11.5px;font-weight:600;line-height:20px;padding:0 9px;border-radius:99px;background:var(--cbg);color:var(--c)}
.ans p{margin-top:6px;font-size:17px;font-weight:700;line-height:1.55;color:var(--h)}
/* 个性化提示条 */
.me{display:none;margin:12px 20px 0;align-items:center;gap:8px;padding:9px 12px;border-radius:14px;background:var(--sec);font-size:13px;line-height:1.5;color:var(--t)}
.me.on{display:flex}
.me .ic{color:var(--c);width:18px;height:18px}
.me span{flex:1;min-width:0}
.me button{flex:none;font-size:13px;color:var(--c);font-weight:600}
/* 节标题 */
.sh{display:flex;align-items:baseline;gap:8px}
.sh i{font-style:normal;font-size:13px;font-weight:800;color:var(--c);font-variant-numeric:tabular-nums;letter-spacing:.04em}
.sh small{margin-left:auto;font-size:10.5px;font-weight:600;letter-spacing:.14em;color:#B8BEFF}
h2{font-size:18px;font-weight:700;line-height:1.4;color:var(--h)}
.lead{margin-top:4px;font-size:14.5px;font-weight:700;color:var(--c);line-height:1.6}
/* 记住这 3 点 */
.key{margin:36px 20px 0}
.kgrid{margin-top:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.kc{padding:12px 10px 14px;border-radius:18px;background:#fff;border:1px solid var(--line)}
.kc .n{display:flex;align-items:baseline;gap:3px;font-size:34px;line-height:1;font-weight:800;color:transparent;-webkit-text-stroke:1.4px var(--c);font-variant-numeric:tabular-nums;font-family:-apple-system,"Helvetica Neue",Arial,sans-serif}
.kc .n small{font-size:13px;font-weight:700;color:var(--c);-webkit-text-stroke:0;font-family:inherit}
.kc b{display:block;margin-top:10px;font-size:14.5px;line-height:1.4}
.kc span{display:block;margin-top:4px;font-size:12px;line-height:1.5;color:var(--m)}
/* 分节大卡 */
.sec{margin:36px 12px 0;padding:24px 16px;border-radius:24px;background:var(--sec);scroll-margin-top:56px}
.sec.w{background:#fff;padding:0 8px}
.sec.p{background:var(--c4)}
/* 01 时间轴 */
.tl{list-style:none;margin-top:18px;position:relative}
.tl>li:not(:last-child)::before{content:"";position:absolute;left:17px;top:36px;bottom:-22px;width:2px;background:linear-gradient(rgba(91,108,255,.55),rgba(91,108,255,.18))}
.tl>li{position:relative;padding-left:48px}
.tl>li+li{margin-top:22px}
.tl .dot{position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--c);box-shadow:0 0 0 1px #DDE1FF}
.tl .dot .ic{width:20px;height:20px}
.tl .row{display:flex;align-items:center;gap:8px;min-height:36px}
.tl .row b{font-size:16px}
.tl .row small{margin-left:auto;font-size:12px;font-weight:600;color:var(--c);background:var(--cbg);border-radius:99px;padding:0 8px;line-height:22px;white-space:nowrap}
.tl .now{display:none;font-size:11px;font-weight:600;color:#fff;background:var(--c);border-radius:99px;padding:0 7px;line-height:19px}
.tl .card{margin-top:6px;padding:10px 14px;border-radius:16px;background:#fff;border:1px solid var(--line);transition:border-color .3s,box-shadow .3s}
.tl ul{list-style:none}
.tl ul li{position:relative;padding-left:13px;font-size:14px;line-height:1.75}
.tl ul li::before{content:"";position:absolute;left:1px;top:.75em;width:5px;height:5px;border-radius:50%;background:var(--c);opacity:.5}
.tl ul li b{font-weight:600}
.tl>li.hl .dot{background:var(--c);color:#fff;box-shadow:0 0 0 5px rgba(91,108,255,.16)}
.tl>li.hl .now{display:inline-block}
.tl>li.hl .card{border-color:#C9CFFF;box-shadow:0 6px 18px rgba(91,108,255,.10)}
/* 折叠 */
details.fold{margin-top:16px;border-radius:16px;background:#fff;border:1px solid var(--line)}
details.fold summary{list-style:none;display:flex;align-items:center;gap:8px;padding:12px 14px;font-size:14px;font-weight:600;color:var(--h);cursor:pointer}
details.fold summary::-webkit-details-marker{display:none}
details.fold summary>.ic{width:18px;height:18px;color:var(--c)}
details.fold summary .arr{margin-left:auto;width:16px;height:16px;color:var(--m);transition:transform .25s}
details.fold[open] summary .arr{transform:rotate(180deg)}
details.fold .bd{padding:0 14px 12px;font-size:13.5px;line-height:1.7}
details.fold .bd p+p{margin-top:6px}
/* 02 计算器 + 刻度条 */
.calc{margin-top:14px;padding:16px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.fld+.fld{margin-top:14px}
.lb{display:block;font-size:13.5px;font-weight:600;color:var(--h)}
.inp.sel{background:var(--sec) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2386909C' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 12px center/16px no-repeat;padding-right:36px}
.hint b{color:var(--c)}
.hint{display:block;margin-top:4px;font-size:12px;color:var(--m);line-height:1.5}
.inp{margin-top:6px;display:block;width:100%;height:44px;padding:0 14px;border-radius:12px;background:var(--sec);border:1px solid var(--line);font-size:15px;color:var(--h);-webkit-appearance:none;appearance:none}
.inp:focus{outline:none;border-color:var(--c)}
.seg{margin-top:6px;display:flex;gap:4px;padding:3px;border-radius:12px;background:var(--sec)}
.seg button{flex:1;min-width:0;height:36px;border-radius:10px;font-size:14px;color:var(--t);white-space:nowrap;transition:transform .15s}
.seg button:active{transform:scale(.98)}
.seg button.on{background:#fff;color:var(--c);font-weight:700;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.stp{margin-top:6px;display:flex;align-items:center;gap:8px}
.stp button{flex:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--c);color:var(--c);font-size:20px;font-weight:600;display:grid;place-items:center}
.stp button:active{transform:scale(.96)}
.stp .inp{margin-top:0;flex:1;min-width:0;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.stp em{flex:none;font-style:normal;font-size:14px;color:var(--t)}
.res{margin-top:16px;padding:16px 14px 14px;border-radius:16px;background:var(--cbg)}
.tot{display:flex;align-items:baseline;gap:6px;color:var(--c)}
.tot em{font-style:normal;font-size:40px;line-height:1;font-weight:800;font-variant-numeric:tabular-nums}
.tot span{font-size:15px;font-weight:700}
.tot small{margin-left:auto;font-size:12px;color:var(--m)}
.ruler{position:relative;margin-top:16px;padding-top:18px}
.track{position:relative;display:flex;height:14px;border-radius:7px;background:#fff;overflow:hidden}
.track i{display:block;height:100%;transition:width .35s ease}
.track .s0{background:var(--c)}
.track .s1{background:rgba(91,108,255,.62)}
.track .s2{background:rgba(91,108,255,.40)}
.track .s3{background:repeating-linear-gradient(-45deg,rgba(91,108,255,.38) 0 3px,rgba(91,108,255,.14) 3px 6px)}
.due{position:absolute;top:0;transform:translateX(-50%);font-size:10.5px;font-weight:600;color:var(--c);white-space:nowrap;line-height:14px}
.due::after{content:"";position:absolute;left:50%;top:15px;width:2px;height:20px;margin-left:-1px;border-radius:1px;background:var(--h)}
.ticks{position:relative;height:22px;margin-top:2px}
.ticks span{position:absolute;top:0;transform:translateX(-50%);font-size:10.5px;color:var(--m);font-variant-numeric:tabular-nums;line-height:1}
.ticks span::before{content:"";display:block;width:1px;height:5px;margin:0 auto 3px;background:#C3C8D6}
.ticks span:first-child{transform:none}
.ticks span:first-child::before{margin-left:0}
.ticks span:last-child{transform:translateX(-100%)}
.ticks span:last-child::before{margin-right:0}
.lgd{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--t);font-variant-numeric:tabular-nums}
.lgd span{display:inline-flex;align-items:center;gap:5px}
.lgd i{width:10px;height:10px;border-radius:3px}
.dt{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dt div{padding:9px 10px;border-radius:12px;background:#fff;line-height:1.35}
.dt small{display:block;font-size:12px;color:var(--m)}
.dt b{display:block;margin-top:3px;font-size:15px;white-space:nowrap;font-variant-numeric:tabular-nums}
.res .empty{margin-top:12px;font-size:13px;color:var(--t);text-align:center;padding:8px;border-radius:12px;background:rgba(255,255,255,.6)}
.res .note{margin-top:8px;font-size:12px;color:var(--m);line-height:1.5}
/* 03 维权步骤卡 */
.warn{margin-top:14px;display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:16px;background:#fff;border:1px dashed #BFC6FF;font-size:13.5px;line-height:1.5;color:var(--t)}
.warn .ic{color:var(--c)}
.warn b{font-weight:700}
.steps{list-style:none;margin-top:14px;position:relative}
.steps::before{content:"";position:absolute;left:29px;top:24px;bottom:24px;border-left:2px dashed #D3D8FF}
.st{position:relative;display:flex;gap:14px;align-items:center;padding:12px 14px;border-radius:18px;background:#fff;border:1px solid var(--line);transition:transform .15s}
.st+.st{margin-top:10px}
.st:active{transform:scale(.98)}
.st .n{flex:none;width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--c);color:#fff;font-size:15px;font-weight:800;font-variant-numeric:tabular-nums}
.st div{flex:1;min-width:0}
.st b{display:block;font-size:15.5px;line-height:1.4}
.st span{display:block;font-size:12.5px;color:var(--m);line-height:1.5;margin-top:1px}
.st .lim{flex:none;align-self:flex-start;font-size:11.5px;font-weight:600;color:var(--c);background:var(--cbg);border-radius:99px;padding:0 8px;line-height:22px}
.hot{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.hot a{display:flex;align-items:center;gap:10px;padding:12px;border-radius:16px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--m);font-size:12px;line-height:1.35;transition:transform .15s}
.hot a:active{transform:scale(.98)}
.hot a .ic{color:var(--c)}
.hot a b{display:block;font-size:17px;color:var(--h);font-variant-numeric:tabular-nums;letter-spacing:.02em}
/* 推荐工具 */
#tools{margin:36px 20px 0}
/* 页底 */
.src{margin:28px 20px 0}
.src ul{list-style:none}
.src li{padding:6px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:1.6;color:var(--t)}
.src li:first-child{border-top:0}
.foot{margin:14px 20px 0;font-size:12px;color:var(--m);text-align:center;line-height:1.6}
.fade{opacity:0;transform:translateY(12px);transition:opacity .45s ease,transform .45s ease}
.fade.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.fade{opacity:1;transform:none;transition:none}.track i{transition:none}}
/* 11-03 用户:「产假计算那个,点进来第一屏就要能算自己有多少产假,其他内容精简」
→ 从「孕期计算器」入口(百宝箱 / topic/jisuan,带 calc=1)进来是计算器模式:顶部换成一句话标题,计算器提到第一屏、结果放最上面,
「记住这 3 点」留着;三阶段时间轴、被劝退怎么办收进一个按钮「看完整的职场维权指南」,点了才展开。从「其他孕妈也在搜」进来仍是原文章页。 */
.cm-hd,.cm-more{display:none}
html.cm .hero,html.cm .me,html.cm #s2 .sh,html.cm #s2 .lead{display:none}
html.cm:not(.cm-all) #s1,html.cm:not(.cm-all) #s3{display:none}
html.cm .cm-hd{display:block;margin-top:-48px;padding:60px 20px 4px;background:linear-gradient(180deg,var(--cbg),#fff)}
.cm-hd p{font-size:12.5px;font-weight:700;color:var(--c);letter-spacing:1px}
.cm-hd h1{margin-top:4px;font-size:25px;font-weight:900;line-height:1.3;color:var(--h)}
.cm-hd span{display:block;margin-top:4px;font-size:14px;color:var(--m)}
html.cm #s2{margin-top:6px}
html.cm .calc{display:flex;flex-direction:column;margin-top:8px;box-shadow:0 10px 30px -18px rgba(91,108,255,.5)}
html.cm .calc .res{order:-1;margin:0 0 16px}
html.cm .key{margin-top:26px}
html.cm:not(.cm-all) .cm-more{display:flex;align-items:center;justify-content:center;gap:4px;margin:22px 20px 0;height:46px;border-radius:99px;background:var(--cbg);color:var(--c);font-size:14.5px;font-weight:700;width:calc(100% - 40px)}
</style>
<!-- 11-04 计算器模式(calc=1)走分步:一步一题、最后出结果,见 ../_shared/wizard.js -->
<link rel="stylesheet" href="../_shared/wizard.css?v=26110464">
<script src="../_shared/wizard.js?v=26110464"></script>
</head>
<body>
<svg class="hide" aria-hidden="true" xmlns="http://www.w3.org/2000/svg">
<symbol id="i-back" viewBox="0 0 24 24"><path d="M15 5l-7 7 7 7"/></symbol>
<symbol id="i-down" viewBox="0 0 24 24"><path d="M6 9l6 6 6-6"/></symbol>
<symbol id="i-preg" viewBox="0 0 24 24"><circle cx="11" cy="4.5" r="2"/><path d="M10 8.5c-1.5 1.5-2 3.5-2 6V21M11 9.5c3.5 0 6 2 6 4.5s-2 4-5 4h-1M11 21v-3"/></symbol>
<symbol id="i-baby" viewBox="0 0 24 24"><circle cx="12" cy="12.5" r="8.5"/><path d="M9.2 11.5h.01M14.8 11.5h.01M9.5 15.2c1.4 1.2 3.6 1.2 5 0M12 4c-1.2 0-1.6 1.2-.8 2"/></symbol>
<symbol id="i-bottle" viewBox="0 0 24 24"><path d="M8 10h8v9a2 2 0 0 1-2 2h-4a2 2 0 0 1-2-2zM9 10V7.5h6V10M10.5 7.5L11 4h2l.5 3.5M8 14h3M8 17h3"/></symbol>
<symbol id="i-phone" viewBox="0 0 24 24"><path d="M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a1 1 0 0 1-1 1A16 16 0 0 1 4 5a1 1 0 0 1 1-1z"/></symbol>
<symbol id="i-plus" viewBox="0 0 24 24"><circle cx="12" cy="12" r="9"/><path d="M12 8v8M8 12h8"/></symbol>
<symbol id="i-coin" viewBox="0 0 24 24"><circle cx="12" cy="12" r="9"/><path d="M9 8l3 4 3-4M12 12v5M9 13h6M9 15.5h6"/></symbol>
<symbol id="i-book" viewBox="0 0 24 24"><path d="M5 19.5v-15A1.5 1.5 0 0 1 6.5 3H19v15H6.5A1.5 1.5 0 0 0 5 19.5 1.5 1.5 0 0 0 6.5 21H19M9 7.5h6"/></symbol>
<symbol id="i-pin" viewBox="0 0 24 24"><path d="M12 21s-6.5-5.5-6.5-11a6.5 6.5 0 0 1 13 0c0 5.5-6.5 11-6.5 11z"/><circle cx="12" cy="10" r="2.3"/></symbol>
<symbol id="i-alert" viewBox="0 0 24 24"><circle cx="12" cy="12" r="9"/><path d="M12 7.5v5.5M12 16.3h.01"/></symbol>
</svg>
<div id="scroll">
<header class="bar" id="bar">
<button class="back" id="back" aria-label="返回"><svg class="ic"><use href="#i-back" xlink:href="#i-back"/></svg></button>
<span class="t">孕期专题</span>
</header>
<!-- 计算器模式顶部(calc=1 时显示,见样式说明) -->
<section class="cm-hd"><p>孕期计算器</p><h1>产假天数计算器</h1><span>填好预产期,算出能休几天、哪天回去上班</span></section>
<section class="hero">
<i class="blob b1"></i><i class="blob b2"></i>
<p class="eyebrow">孕期专题 · 职场篇</p>
<h1>孕期被调岗、降薪,<br><span class="mk">合法吗</span>?</h1>
<div class="pic"><img src="img/hero.webp" alt="职场妈妈抱着宝宝站在办公室窗前"></div>
<div class="ans">
<span class="tag">一句话答案</span>
<p>单方面因为怀孕降薪、调岗、辞退都不合法;调岗降薪须协商一致、书面确认。</p>
</div>
</section>
<div class="me" id="me"><svg class="ic"><use href="#i-pin" xlink:href="#i-pin"/></svg><span id="meT"></span><button id="meGo">去看</button></div>
<section class="key">
<h2>记住这 3 点</h2>
<div class="kgrid">
<div class="kc fade"><span class="n">98<small>天</small></span><b>产假底线</b><span>难产多胎另加</span></div>
<div class="kc fade"><span class="n">0<small>扣薪</small></span><b>产检算上班</b><span>也不算请假</span></div>
<div class="kc fade"><span class="n">1<small>小时</small></span><b>每天哺乳</b><span>到宝宝 1 岁</span></div>
</div>
</section>
<!-- 01 三段权益时间轴 -->
<section class="sec" id="s1">
<div class="sh"><i>01</i><h2>三个阶段的保护</h2><small>TIMELINE</small></div>
<p class="lead">不得降薪、不得辞退,合同到期也要顺延。</p>
<ol class="tl">
<li class="fade" id="stA">
<span class="dot"><svg class="ic"><use href="#i-preg" xlink:href="#i-preg"/></svg></span>
<div class="row"><b>孕期</b><span class="now">你在这里</span><small>怀孕上班</small></div>
<div class="card"><ul>
<li>产检时间<b>计入劳动时间</b></li>
<li>凭医院证明,可减工作量或调岗</li>
<li>满 7 个月,<b>不加班、不排夜班</b></li>
</ul></div>
</li>
<li class="fade" id="stB">
<span class="dot"><svg class="ic"><use href="#i-baby" xlink:href="#i-baby"/></svg></span>
<div class="row"><b>产假</b><span class="now">你在这里</span><small class="num">至少 98 天</small></div>
<div class="card"><ul>
<li>其中<b>产前可休 15 天</b></li>
<li>难产、多胞胎各加 15 天</li>
<li>本省奖励假另加,以当地规定为准</li>
</ul></div>
</li>
<li class="fade" id="stC">
<span class="dot"><svg class="ic"><use href="#i-bottle" xlink:href="#i-bottle"/></svg></span>
<div class="row"><b>哺乳期</b><span class="now">你在这里</span><small>到宝宝 1 岁</small></div>
<div class="card"><ul>
<li>每天<b>1 小时哺乳</b>,算在上班时间内</li>
<li>不加班、不排夜班</li>
<li>合同到期,<b>顺延到哺乳期结束</b></li>
</ul></div>
</li>
</ol>
<details class="fold">
<summary><svg class="ic"><use href="#i-plus" xlink:href="#i-plus"/></svg>还有这些也受保护<svg class="ic arr"><use href="#i-down" xlink:href="#i-down"/></svg></summary>
<div class="bd">
<p><b>流产假:</b>怀孕未满 4 个月 15 天,满 4 个月 42 天。</p>
<p><b>晋升:</b>不得因怀孕、生育、哺乳限制晋职、晋级、评职称。</p>
<p><b>调岗降薪:</b>改岗位、薪酬须协商一致并书面确认。</p>
<p><b>违法辞退:</b>可要求继续履行合同,或主张经济补偿 2 倍的赔偿金。严重违纪等情形除外。</p>
</div>
</details>
</section>
<!-- 02 产假刻度条 + 计算器 -->
<section class="sec w" id="s2">
<div class="sh"><i>02</i><h2>我的产假怎么算</h2><small>CALCULATOR</small></div>
<p class="lead">98 天是底线,加上本省天数才是你能休的。</p>
<div class="calc fade">
<div class="fld">
<label class="lb" for="cDue">预产期</label>
<input class="inp" id="cDue" type="date">
</div>
<div class="fld">
<span class="lb">是否难产</span>
<div class="seg" id="cHard"><button data-v="0" class="on">否</button><button data-v="1">难产 / 剖宫产 +15 天</button></div>
<span class="hint">剖宫产是否按难产算各地不一样,多数地方算</span>
</div>
<div class="fld">
<span class="lb">几胞胎</span>
<div class="seg" id="cMulti"><button data-v="1" class="on">单胎</button><button data-v="2">双胞胎</button><button data-v="3">三胞胎</button></div>
</div>
<div class="fld">
<label class="lb" for="cProv">所在省份</label>
<select class="inp sel" id="cProv"><option value="">选择省份,自动带出本省天数</option></select>
</div>
<div class="fld" id="fPar">
<span class="lb">这是第几个宝宝</span>
<div class="seg" id="cPar"><button data-v="1" class="on">第一个</button><button data-v="2">第二个</button><button data-v="3">第三个及以上</button></div>
</div>
<div class="fld">
<span class="lb">本省可延长天数</span>
<div class="stp"><button id="cMinus" aria-label="减少">-</button><input class="inp" id="cLocal" type="number" inputmode="numeric" min="0" max="365" value="0"><em>天</em><button id="cPlus" aria-label="增加">+</button></div>
<span class="hint" id="cProvNote">选了省份会自动填好;和单位规定不一样的话,直接在这里改</span>
</div>
<div class="res" id="cRes">
<div class="tot"><em id="rTotal">98</em><span>天产假</span><small id="rNat">国家规定 98 天</small></div>
<div class="ruler" aria-hidden="true">
<span class="due" id="rDue">预产期</span>
<div class="track"><i class="s0" id="b0"></i><i class="s1" id="b1"></i><i class="s2" id="b2"></i><i class="s3" id="b3"></i></div>
<div class="ticks" id="rTicks"></div>
</div>
<div class="lgd" id="rLgd"></div>
<div id="rDates"></div>
</div>
</div>
</section>
<!-- 03 维权步骤卡 -->
<section class="sec p" id="s3">
<div class="sh"><i>03</i><h2>被劝退、降薪怎么办</h2><small>STEPS</small></div>
<p class="lead">先留证据,按这 4 步走。</p>
<div class="warn fade"><svg class="ic"><use href="#i-alert" xlink:href="#i-alert"/></svg><span>被要求签字时,<b>别签「自愿离职」</b>,先带回去想清楚。</span></div>
<ol class="steps">
<li class="st fade"><span class="n">1</span><div><b>留证据</b><span>聊天记录、工资条、通知截图备份</span></div></li>
<li class="st fade"><span class="n">2</span><div><b>书面沟通</b><span>发邮件写明诉求,保留回复</span></div></li>
<li class="st fade"><span class="n">3</span><div><b>劳动监察投诉</b><span>找当地人社局劳动监察大队</span></div></li>
<li class="st fade"><span class="n">4</span><div><b>申请劳动仲裁</b><span>不收费,自知道被侵权起算</span></div><span class="lim">时效 1 年</span></li>
</ol>
<div class="hot">
<a href="tel:12333"><svg class="ic"><use href="#i-phone" xlink:href="#i-phone"/></svg><div><b>12333</b>人社热线</div></a>
<a href="tel:12338"><svg class="ic"><use href="#i-phone" xlink:href="#i-phone"/></svg><div><b>12338</b>妇女维权热线</div></a>
</div>
<details class="fold">
<summary><svg class="ic"><use href="#i-coin" xlink:href="#i-coin"/></svg>产假期间,钱怎么发?<svg class="ic arr"><use href="#i-down" xlink:href="#i-down"/></svg></summary>
<div class="bd">
<p><b>交了生育保险:</b>由生育保险基金发生育津贴,按单位上年度职工月平均工资计发。</p>
<p><b>没交:</b>单位按你产假前的工资发。</p>
<p>津贴低于原工资要不要补差,以当地规定为准。</p>
</div>
</details>
</section>
<button type="button" class="cm-more" id="cmMore">看完整的职场维权指南 ›</button>
<div id="tools"></div>
<details class="fold src">
<summary><svg class="ic"><use href="#i-book" xlink:href="#i-book"/></svg>参考来源<svg class="ic arr"><use href="#i-down" xlink:href="#i-down"/></svg></summary>
<div class="bd"><ul>
<li>《女职工劳动保护特别规定》第 5~10 条:不得因三期降薪辞退;孕期减量、产检计入劳动时间、7 个月以上不加班不排夜班;98 天产假及难产、多胞胎、流产假;生育津贴;哺乳时间与设施</li>
<li>《劳动合同法》第 35、42、45、48、87 条:变更合同须书面协商;三期内不得依第 40、41 条解除;合同期满顺延至三期结束;违法解除继续履行或 2 倍赔偿金</li>
<li>《妇女权益保障法》(2022 年修订)第 48 条:不得因怀孕、产假、哺乳降低工资福利,限制晋职、晋级、评职称,辞退或解除合同</li>
<li>《社会保险法》第 53~56 条:生育保险待遇含生育医疗费用和生育津贴</li>
<li>《劳动争议调解仲裁法》第 27、53 条:仲裁时效 1 年,自知道或应当知道权利被侵害之日起算;仲裁不收费</li>
<li>各省天数:各省(区、市)现行人口与计划生育条例及配套政策,2026 年 11 月核对(如四川 2025 年 11 月修改条例、生育假延长 90 天);福建为 158~180 天由单位确定,表中按 158 天</li>
<li>计算器:98 天 + 难产 15 天 + 每多 1 个宝宝 15 天 + 本省天数,按预产期前 15 天起休估算;实际以分娩日期、单位审批及当地规定(含节假日是否顺延、剖宫产是否按难产)为准</li>
</ul></div>
</details>
<p class="foot">本页为法律常识整理,不构成法律意见。</p>
</div>
<script src="../_shared/tools.js"></script>
<script>
(function () {
'use strict';
var $ = function (s) { return document.querySelector(s); };
function hp(n) { var h = (location.hash.slice(1) || '') + '&' + (location.search.slice(1) || ''); var m = h.match(new RegExp('(?:^|&)' + n + '=([^&]*)')); return m ? decodeURIComponent(m[1]) : ''; }
var openid = hp('openid');
/* 计算器模式:计算器挪到最前(DOM 上紧跟顶部标题),「记住这 3 点」跟在后面 */
if (hp('calc')) {
document.documentElement.classList.add('cm');
document.title = '产假天数计算器';
document.querySelector('#bar .t').textContent = '孕期计算器';
var hd = document.querySelector('.cm-hd');
hd.parentNode.insertBefore(document.getElementById('s2'), hd.nextSibling);
document.getElementById('s2').parentNode.insertBefore(document.querySelector('.key'), document.getElementById('s2').nextSibling);
document.getElementById('cmMore').addEventListener('click', function () { document.documentElement.classList.add('cm-all'); setTimeout(function () { go('s1'); }, 30); });
window.addEventListener('DOMContentLoaded', function () { CKW.init({ root: '#s2 .calc', res: '#cRes', after: '#s2 ~ *' }); });
}
var sc = $('#scroll');
/* 返回:从首页点进来就 back;直接打开(分享 / 刷新)就回同目录的首页,身份原样带回 */
$('#back').addEventListener('click', function () {
if (document.referrer && document.referrer.indexOf(location.host) >= 0 && history.length > 1) history.back();
else location.href = '../../' + location.search + location.hash;
});
/* 顶栏:滚动后白底细线 */
var bar = $('#bar');
sc.addEventListener('scroll', function () { bar.classList.toggle('on', sc.scrollTop > 8); }, { passive: true });
function go(id) {
var el = document.getElementById(id); if (!el) return;
var top = el.getBoundingClientRect().top - sc.getBoundingClientRect().top + sc.scrollTop - 60;
sc.scrollTo({ top: top, behavior: 'smooth' });
}
/* ---------- 推荐工具(孕周拿到后重画一次,好显示「孕N周开放」) ---------- */
var toolsEl = $('#tools');
function tools(wk) {
if (!window.TopicTools) return;
toolsEl.className = '';
TopicTools.render(toolsEl, [
{ id: 'chanjianrili', why: '排好产检时间,请产检假有依据' },
{ id: 'daichanqingdan', why: '休产假前,把待产包一次备齐' },
{ id: 'taidong', why: '上班间隙,也别忘了数胎动' }
], { title: '用得上的工具', color: '#5B6CFF', bg: '#EEF0FF', wk: wk || 0 });
}
tools(0);
/* ---------- 产假计算器 + 刻度条 ---------- */
function pad(n) { return (n < 10 ? '0' : '') + n; }
function iso(d) { return d.getFullYear() + '-' + pad(d.getMonth() + 1) + '-' + pad(d.getDate()); }
function parseDay(s) { var m = /^(\d{4})-(\d{1,2})-(\d{1,2})/.exec(s || ''); return m ? new Date(+m[1], +m[2] - 1, +m[3]) : null; }
function addDays(d, n) { return new Date(d.getFullYear(), d.getMonth(), d.getDate() + n); } /* 按日历日加,避开夏令时 */
function cn(d) { return d.getFullYear() + '年' + (d.getMonth() + 1) + '月' + d.getDate() + '日'; }
function segVal(id) { var b = document.querySelector('#' + id + ' .on'); return b ? +b.dataset.v : 0; }
[].forEach.call(document.querySelectorAll('.seg'), function (s) {
s.addEventListener('click', function (e) {
var b = e.target.closest('button'); if (!b) return;
[].forEach.call(s.children, function (x) { x.classList.toggle('on', x === b); });
calc();
});
});
/* 11-03 用户:「选省份自动跳出本省天数,用户核对;不对也能自己改」
各省产假合计(含国家 98 天,顺产单胎),[第一个, 第二个, 第三个及以上]。2026-11-03 按各省现行《人口与计划生育条例》及公开报道逐省核对:
四川 2025-11-28 起 +90(三孩经申请、单位同意可再 +30);广西 一孩 +60 / 二孩 +70 / 三孩 +80;河北、内蒙古 三孩 +90;浙江 二孩起 +90;陕西 三孩 173;
2026-11-08 核查补充:陕西 参加孕前检查的再 +10(一孩、二孩 168、三孩 183,《陕西省人口与计划生育条例》2022-05-25 修订第 45 条),表里仍按没做孕前检查填、写在备注里;
河南 条例原文「增加产假三个月」(2021-11-27 修改),按 90 天折成 188;甘肃 180(2021-11-26 修改后条例,公开报道一致,聚合站的 188 没找到条例依据,暂不改);
吉林 按省优化生育政策 180;福建条例为 158~180 由单位定,这里先填 158。政策一改就要更新这张表(AGENTS.md 12 条同类:最晚 2027-06-30 复核)。 */
var PROV = [['北京', 158], ['天津', 158], ['河北', [158, 158, 188]], ['山西', 158], ['内蒙古', [158, 158, 188]], ['辽宁', 158], ['吉林', 180], ['黑龙江', 180],
['上海', 158], ['江苏', 158], ['浙江', [158, 188, 188]], ['安徽', 158], ['福建', 158, '福建条例是 158~180 天,由单位在这个范围内定,问下人事'], ['江西', 188], ['山东', 158],
['河南', 188, '河南条例写的是「增加三个月」,这里按 90 天估,按日历算可能差一两天'], ['湖北', 158], ['湖南', 158], ['广东', 178], ['广西', [158, 168, 178]], ['海南', 188], ['重庆', 178, '经批准还可休育儿假到宝宝 1 岁'],
['四川', [188, 188, 188], '第三个宝宝经本人申请、单位同意,还能再加 30 天'], ['贵州', 158], ['云南', 158], ['西藏', 365], ['陕西', [158, 158, 173], '参加了孕前检查的再加 10 天'], ['甘肃', 180], ['青海', 188], ['宁夏', 158], ['新疆', 158]];
var PKEY = 'mmbox.leave.prov';
var prov = $('#cProv');
prov.innerHTML += PROV.map(function (x, i) { return '<option value="' + i + '">' + x[0] + '</option>'; }).join('');
function provDays(x, par) { return Array.isArray(x[1]) ? x[1][Math.min(par, 3) - 1] : x[1]; }
function applyProv() {
var x = PROV[prov.value], note = $('#cProvNote');
if (!x) { note.innerHTML = '选了省份会自动填好;和单位规定不一样的话,直接在这里改'; return; }
var par = segVal('cPar') || 1, tot = provDays(x, par);
loc.value = tot - 98;
note.innerHTML = '<b>' + x[0] + '</b>' + (Array.isArray(x[1]) ? (par >= 3 ? '第三个及以上' : par === 2 ? '第二个' : '第一个') + '宝宝' : '') + '产假合计 <b>' + tot + '</b> 天(国家 98 + 本省 ' + (tot - 98) + ')' +
(x[2] ? ',' + x[2] : '') + '。按 2026 年 11 月各省规定核对,和单位不一致以单位为准,可直接改。';
try { localStorage.setItem(PKEY, x[0] + '|' + par); } catch (e) {} /* 省份 + 第几个宝宝,下次进来照旧 */
}
prov.addEventListener('change', function () { applyProv(); calc(); });
$('#cPar').addEventListener('click', function () { if (prov.value) { applyProv(); calc(); } });
var loc = $('#cLocal');
function localDays() { var v = parseInt(loc.value, 10); return isNaN(v) || v < 0 ? 0 : Math.min(v, 365); }
$('#cMinus').addEventListener('click', function () { loc.value = Math.max(0, localDays() - 1); calc(); });
$('#cPlus').addEventListener('click', function () { loc.value = Math.min(365, localDays() + 1); calc(); });
loc.addEventListener('input', calc);
loc.addEventListener('blur', function () { loc.value = localDays(); calc(); });
$('#cDue').addEventListener('input', calc);
$('#cDue').addEventListener('change', calc);
/* 国家 = 98 + 难产 15 + (胎数-1)×15;合计 = 国家 + 本省;
起休 = 预产期前 15 天(pre=0 则预产期当天);最后一天 = 起休 + 合计 - 1;返岗 = 起休 + 合计 */
function compute(due, hard, multi, local, pre) {
if (pre === undefined) pre = 1;
var nat = 98 + (hard ? 15 : 0) + (multi - 1) * 15;
var total = nat + local;
var start = addDays(due, pre ? -15 : 0);
return { nat: nat, total: total, start: start, last: addDays(start, total - 1), back: addDays(start, total) };
}
window.__leaveCalc = compute; /* 自查用 */
var C = ['var(--c)', 'rgba(91,108,255,.62)', 'rgba(91,108,255,.40)', 'repeating-linear-gradient(-45deg,rgba(91,108,255,.38) 0 3px,rgba(91,108,255,.14) 3px 6px)'];
function calc() {
var hard = segVal('cHard'), multi = segVal('cMulti') || 1, local = localDays();
var due = parseDay($('#cDue').value);
var r = compute(due || new Date(), hard, multi, local, 1);
var parts = [98, hard ? 15 : 0, (multi - 1) * 15, local];
var names = ['国家 98', '难产 +15', '多胞胎 +' + parts[2], '本省 +' + local];
/* 刻度:满格取 ≥ 合计、步长 30 的整数倍,最少 150 天 */
var max = Math.max(150, Math.ceil(r.total / 30) * 30), step = max > 240 ? 60 : 30;
$('#rTotal').textContent = r.total;
$('#rNat').textContent = '国家规定 ' + r.nat + ' 天';
['b0', 'b1', 'b2', 'b3'].forEach(function (id, i) { document.getElementById(id).style.width = (parts[i] / max * 100) + '%'; });
$('#rDue').style.left = (15 / max * 100) + '%';
var tk = '';
for (var v = 0; v <= max; v += step) tk += '<span style="left:' + (v / max * 100) + '%">' + v + '</span>';
$('#rTicks').innerHTML = tk;
var lg = '';
parts.forEach(function (p, i) { if (p) lg += '<span><i style="background:' + C[i] + '"></i>' + names[i] + '</span>'; });
$('#rLgd').innerHTML = lg;
$('#rDates').innerHTML = due
? '<div class="dt"><div><small>开始休</small><b id="rStart">' + cn(r.start) + '</b></div>' +
'<div><small>返岗日</small><b id="rBack">' + cn(r.back) + '</b></div></div>' +
'<p class="note">按预产期前 15 天起休估算,以实际为准。</p>'
: '<div class="empty">填上预产期,算出起休和返岗日</div>';
}
try { var sp = (localStorage.getItem(PKEY) || '').split('|'); PROV.forEach(function (x, i) { if (x[0] === sp[0]) prov.value = i; }); if (+sp[1] > 1) [].forEach.call($('#cPar').children, function (b) { b.classList.toggle('on', b.dataset.v === sp[1]); }); if (prov.value) applyProv(); } catch (e) {} /* 上次选的省份 */
calc();
/* ---------- 按孕周点亮阶段 + 预填预产期 ---------- */
function mark(stage, t, target) {
var el = document.getElementById(stage); if (el) el.classList.add('hl');
$('#meT').textContent = t;
$('#meGo').onclick = function () { go(target || stage); };
$('#me').classList.add('on');
}
if (openid) {
var base = '/api/mp/public/mama-box/';
fetch(base + 'profile?openid=' + encodeURIComponent(openid))
.then(function (r) { return r.ok ? r.json() : null; })
.then(function (j) {
var p = j && j.code === 200 && j.result; if (!p || !p.dueDate) return;
var d = parseDay(p.dueDate), inp = $('#cDue');
if (d && !inp.value) { inp.value = iso(d); calc(); }
}).catch(function () {});
fetch(base + 'pregnancy?openid=' + encodeURIComponent(openid))
.then(function (r) { return r.ok ? r.json() : null; })
.then(function (j) {
var p = j && j.code === 200 && j.result; if (!p) return;
/* 先判产后(产后返回体 week 也是 null) */
if (p.postpartum) mark('stC', '宝宝出生了,重点看哺乳期的保护');
else if (p.week != null && !p.empty) {
var w = p.week;
tools(w);
if (w >= 28) mark('stA', '孕 ' + w + ' 周,已满 7 个月:不加班,算算产假', 's2');
else mark('stA', '孕 ' + w + ' 周,先看孕期的保护');
}
}).catch(function () {});
}
/* 进场动画:同一批进入视口的按顺序错开 60ms */
var fades = document.querySelectorAll('.fade');
if ('IntersectionObserver' in window) {
var io = new IntersectionObserver(function (es) {
var k = 0;
es.forEach(function (e) {
if (!e.isIntersecting) return;
e.target.style.transitionDelay = (k++ * 60) + 'ms';
e.target.classList.add('in');
io.unobserve(e.target);
});
}, { root: sc, threshold: .1 });
[].forEach.call(fades, function (el) { io.observe(el); });
} else [].forEach.call(fades, function (el) { el.classList.add('in'); });
/* 禁止下拉回弹:固定外壳 + 容器滚动 + 到顶/到底时拦 touchmove */
var y0 = 0;
sc.addEventListener('touchstart', function (e) { y0 = e.touches[0].clientY; }, { passive: true });
sc.addEventListener('touchmove', function (e) {
var dy = e.touches[0].clientY - y0;
if ((sc.scrollTop <= 0 && dy > 0) || (sc.scrollTop + sc.clientHeight >= sc.scrollHeight - 1 && dy < 0)) e.preventDefault();
}, { passive: false });
document.addEventListener('touchmove', function (e) { if (!sc.contains(e.target)) e.preventDefault(); }, { passive: false });
})();
</script>
<script src="../_shared/brand.js?v=26110203"></script>
<script src="../../js/last-sub.js?v=26110703"></script> <!-- 11-07 小程序刷新回到这一页(见 js/last-sub.js) -->
<script src="../../js/pv.js?v=26110653"></script> <!-- 11-07 页面访问记录(推送效果看板,见 js/pv.js) -->
</body>
</html>