打开/关闭菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

微件:TaffyHomepageUI

来自永雏塔菲百科

<svg aria-hidden="true" focusable="false" data-tfp-icon="scan-search"

 xmlns="http://www.w3.org/2000/svg"
 width="24"
 height="24"
 viewBox="0 0 24 24"
 fill="none"
 stroke="currentColor"
 stroke-width="2"
 stroke-linecap="round"
 stroke-linejoin="round"

>

 <path d="M3 7V5a2 2 0 0 1 2-2h2" />
 <path d="M17 3h2a2 2 0 0 1 2 2v2" />
 <path d="M21 17v2a2 2 0 0 1-2 2h-2" />
 <path d="M7 21H5a2 2 0 0 1-2-2v-2" />
 <circle cx="12" cy="12" r="3" />
 <path d="m16 16-1.9-1.9" />

</svg> <svg aria-hidden="true" focusable="false" data-tfp-icon="images"

 xmlns="http://www.w3.org/2000/svg"
 width="24"
 height="24"
 viewBox="0 0 24 24"
 fill="none"
 stroke="currentColor"
 stroke-width="2"
 stroke-linecap="round"
 stroke-linejoin="round"

>

 <path d="m22 11-1.296-1.296a2.4 2.4 0 0 0-3.408 0L11 16" />
 <path d="M4 8a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2" />
 <circle cx="13" cy="7" r="1" fill="currentColor" />
 <rect x="8" y="2" width="14" height="14" rx="2" />

</svg> <svg aria-hidden="true" focusable="false" data-tfp-icon="rotate-ccw-clock"

 xmlns="http://www.w3.org/2000/svg"
 width="24"
 height="24"
 viewBox="0 0 24 24"
 fill="none"
 stroke="currentColor"
 stroke-width="2"
 stroke-linecap="round"
 stroke-linejoin="round"

>

 <path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8" />
 <path d="M3 3v5h5" />
 <path d="M12 7v5l4 2" />

</svg> <svg aria-hidden="true" focusable="false" data-tfp-icon="shopping-bag"

 xmlns="http://www.w3.org/2000/svg"
 width="24"
 height="24"
 viewBox="0 0 24 24"
 fill="none"
 stroke="currentColor"
 stroke-width="2"
 stroke-linecap="round"
 stroke-linejoin="round"

>

 <path d="M16 10a4 4 0 0 1-8 0" />
 <path d="M3.103 6.034h17.794" />
 <path d="M3.4 5.467a2 2 0 0 0-.4 1.2V20a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6.667a2 2 0 0 0-.4-1.2l-2-2.667A2 2 0 0 0 17 2H7a2 2 0 0 0-1.6.8z" />

</svg> <svg aria-hidden="true" focusable="false" data-tfp-icon="gamepad-2"

 xmlns="http://www.w3.org/2000/svg"
 width="24"
 height="24"
 viewBox="0 0 24 24"
 fill="none"
 stroke="currentColor"
 stroke-width="2"
 stroke-linecap="round"
 stroke-linejoin="round"

>

 <line x1="6" x2="10" y1="11" y2="11" />
 <line x1="8" x2="8" y1="9" y2="13" />
 <line x1="15" x2="15.01" y1="12" y2="12" />
 <line x1="18" x2="18.01" y1="10" y2="10" />
 <path d="M17.32 5H6.68a4 4 0 0 0-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 0 1 9.828 16h4.344a2 2 0 0 1 1.414.586L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.545-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0 0 17.32 5z" />

</svg> <svg aria-hidden="true" focusable="false" data-tfp-icon="list-music"

 xmlns="http://www.w3.org/2000/svg"
 width="24"
 height="24"
 viewBox="0 0 24 24"
 fill="none"
 stroke="currentColor"
 stroke-width="2"
 stroke-linecap="round"
 stroke-linejoin="round"

>

 <path d="M16 5H3" />
 <path d="M11 12H3" />
 <path d="M11 19H3" />
 <path d="M21 16V5" />
 <circle cx="18" cy="16" r="3" />

</svg> <svg aria-hidden="true" focusable="false" data-tfp-icon="clapperboard"

 xmlns="http://www.w3.org/2000/svg"
 width="24"
 height="24"
 viewBox="0 0 24 24"
 fill="none"
 stroke="currentColor"
 stroke-width="2"
 stroke-linecap="round"
 stroke-linejoin="round"

>

 <path d="m12.296 3.464 3.02 3.956" />
 <path d="M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3z" />
 <path d="M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" />
 <path d="m6.18 5.276 3.1 3.899" />

</svg> <svg aria-hidden="true" focusable="false" data-tfp-icon="messages-square"

 xmlns="http://www.w3.org/2000/svg"
 width="24"
 height="24"
 viewBox="0 0 24 24"
 fill="none"
 stroke="currentColor"
 stroke-width="2"
 stroke-linecap="round"
 stroke-linejoin="round"

>

 <path d="M16 10a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 14.286V4a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z" />
 <path d="M20 9a2 2 0 0 1 2 2v10.286a.71.71 0 0 1-1.212.502l-2.202-2.202A2 2 0 0 0 17.172 19H10a2 2 0 0 1-2-2v-1" />

</svg> <style> body.page-首页 .mw-body {

 z-index: 4;

} </style> <style id="tfp-device-theme-style"> /* Refactoring UI §2.1 / §5.6 / §6.4.1. Dark mode and device theme behavior use the skill's documented extensions.

  Palette and semantic values: night/design-tokens.json. Every selector is page scoped.
  CSS variables live in the Widget because TemplateStyles cannot declare custom properties. */

body.page-首页 {

 --tfp-surface: #ffffff;
 --tfp-raised: #fffafd;
 --tfp-hero: #ffe6f2;
 --tfp-help: #fff4bf;
 --tfp-text: #5c3b4d;
 --tfp-muted: #8a627c;
 --tfp-accent: #9f1534;
 --tfp-link: #cf2e61;
 --tfp-action: #cf2e61;
 --tfp-action-hover: #9f1534;
 --tfp-action-text: #ffffff;
 --tfp-help-text: #5c3b4d;
 --tfp-help-muted: #5c3b4d;
 --tfp-border: #ffd1e6;
 --tfp-focus: #9f1534;
 color-scheme: light;
 --tfp-shell: hsl(var(--color-primary__h), var(--color-surface-0__s), var(--color-surface-0__l), 85%);
 --tfp-header: hsl(var(--color-primary__h), var(--color-surface-0__s), var(--color-surface-0__l), 60%);
 --tfp-footer: hsl(var(--color-primary__h), var(--color-surface-2__s), var(--color-surface-2__l), 60%);
 --tfp-frame-image: url(/skins/AceTaffy/custom/border.png);
 --tfp-frame-color: transparent;
 --tfp-scene-filter: none;
 --tfp-character-filter: none;

} @media (prefers-color-scheme: dark) { body.page-首页 {

 --tfp-surface: #1e0b15;
 --tfp-raised: #2e1723;
 --tfp-hero: #3d2231;
 --tfp-help: #3d1e00;
 --tfp-text: #fceef5;
 --tfp-muted: #d8bccc;
 --tfp-accent: #ff8fc7;
 --tfp-link: #ff8fc7;
 --tfp-action: #ff8fc7;
 --tfp-action-hover: #ffbdeb;
 --tfp-action-text: #1e0b15;
 --tfp-help-text: #fffeeb;
 --tfp-help-muted: #fffce0;
 --tfp-border: #4d2f3f;
 --tfp-focus: #ff8fc7;
 color-scheme: dark;
 --tfp-shell: #12040c;
 --tfp-header: #1e0b15;
 --tfp-footer: #1e0b15;
 --tfp-frame-image: none;
 --tfp-frame-color: #12040c;
 --tfp-scene-filter: brightness(.35) saturate(.65);
 --tfp-character-filter: brightness(.65) saturate(.75);
 --color-base: var(--tfp-text);
 --color-emphasized: var(--tfp-text);
 --color-subtle: var(--tfp-muted);
 --color-link: var(--tfp-accent);
 --color-progressive: var(--tfp-accent);
 --color-surface-0: var(--tfp-surface);
 --color-surface-1: var(--tfp-raised);
 --color-surface-2: var(--tfp-hero);
 --color-surface-3: var(--tfp-hero);
 --border-color-base: var(--tfp-border);

} }

body.page-首页 .tfp { background-color: var(--tfp-surface); color: var(--tfp-text); } body.page-首页 .tfp a, body.page-首页 .tfp a:visited, body.page-首页 .tfp h2, body.page-首页 .tfp h3 { color: var(--tfp-text); } body.page-首页 .tfp a:hover { color: var(--tfp-accent); } body.page-首页 .tfp a:focus, body.page-首页 .tfp button:focus-visible { outline: 3px solid var(--tfp-focus); outline-offset: 4px; } body.page-首页 .tfp .tfp-hero { background-color: var(--tfp-hero); } body.page-首页 .tfp .tfp-eyebrow, body.page-首页 .tfp .tfp-about a { color: var(--tfp-accent); } body.page-首页 .tfp .tfp-lede, body.page-首页 .tfp .tfp-art-note { color: var(--tfp-text); } body.page-首页 .tfp .tfp-primary a, body.page-首页 .tfp .tfp-primary a:visited { background-color: var(--tfp-action); color: var(--tfp-action-text); } body.page-首页 .tfp .tfp-primary a:hover, body.page-首页 .tfp .tfp-primary a:active { background-color: var(--tfp-action-hover); color: var(--tfp-action-text); } body.page-首页 .tfp .tfp-tool, body.page-首页 .tfp .tfp-entry, body.page-首页 .tfp .tfp-friend { background-color: var(--tfp-raised); } body.page-首页 .tfp .tfp-icon, body.page-首页 .tfp .tfp-description, body.page-首页 .tfp .tfp-entry-label, body.page-首页 .tfp .tfp-entry p, body.page-首页 .tfp .tfp-signoff { color: var(--tfp-muted); } body.page-首页 .tfp .tfp-entry-help { background-color: var(--tfp-help); } body.page-首页 .tfp .tfp-entry-help h3, body.page-首页 .tfp .tfp-entry-help a, body.page-首页 .tfp .tfp-entry-help a:hover, body.page-首页 .tfp .tfp-entry-help .tfp-entry-label, body.page-首页 .tfp .tfp-entry-help .tfp-icon { color: var(--tfp-help-text); } body.page-首页 .tfp .tfp-entry-help p { color: var(--tfp-help-muted); } body.page-首页 .tfp .tfp-tags a { background-color: var(--tfp-hero); color: var(--tfp-text); } body.page-首页 .tfp .tfp-tags a:hover { background-color: var(--tfp-help); color: var(--tfp-help-text); } body.page-首页 .tfp .tfp-category-more a, body.page-首页 .tfp .tfp-signoff > span { color: var(--tfp-link); } body.page-首页 .tfp .tfp-social-section { border-top-color: var(--tfp-border); } body.page-首页 .mw-body { background: var(--tfp-shell) !important; border-image-source: var(--tfp-frame-image); border-color: var(--tfp-frame-color); z-index: 4; } body.page-首页 .mw-header { background: var(--tfp-header) !important; } body.page-首页 .mw-footer { background: var(--tfp-footer) !important; } body.page-首页 .ace-taffy-background-image { filter: var(--tfp-scene-filter); } body.page-首页 .ace-taffy-attachment-taffy, body.page-首页 .ace-taffy-attachment-meowers { filter: var(--tfp-character-filter); } /* The skin's 50px frame leaves too little room for a two-column hero on small tablets. */ @media (max-width: 800px) { body.page-首页 .tfp .tfp-hero { grid-template-columns: minmax(0, 1fr); } body.page-首页 .tfp .tfp-art { order: -1; } body.page-首页 .tfp .tfp-art-note { display: none; } body.page-首页 .tfp .tfp-lede br { display: none; } } </style> <script> /* Device preference only. No controls, stored preferences, cookies, or requests. */ (function () {

 'use strict';
 var body = document.body;
 if (!body || !body.classList.contains('page-首页')) { return; }
 if (body.dataset.tfpAutoThemeReady === 'true') { return; }
 body.dataset.tfpAutoThemeReady = 'true';
 var query = window.matchMedia('(prefers-color-scheme: dark)');
 var root = document.documentElement;
 var classes = ['skin-theme-clientpref-os', 'skin-theme-clientpref-day', 'skin-theme-clientpref-night', 'skin-citizen-auto', 'skin-citizen-light', 'skin-citizen-dark'];
 function syncDeviceTheme() {
   body.dataset.tfpDeviceTheme = query.matches ? 'dark' : 'light';
   classes.forEach(function (name) { root.classList.remove(name); });
   root.classList.add('skin-theme-clientpref-os');
   root.classList.add('skin-citizen-auto');
 }
 syncDeviceTheme();
 if (query.addEventListener) { query.addEventListener('change', syncDeviceTheme); }
 else if (query.addListener) { query.addListener(syncDeviceTheme); }
 window.addEventListener('pageshow', syncDeviceTheme);

}()); </script>