Help
RSS
API
Feed
Maltego
Contact
Domain > blog.meathill.com
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2015-04-15
66.147.244.61
(
ClassC
)
2022-07-30
47.246.2.225
(
ClassC
)
2022-07-30
47.246.2.226
(
ClassC
)
2024-07-17
43.159.99.102
(
ClassC
)
Port 80
HTTP/1.1 200 OKServer: nginx/1.18.0 (Ubuntu)Content-Type: text/html; charsetUTF-8Vary: Accept-EncodingVary: Accept-Encoding, CookieLast-Modified: Thu, 11 Jul 2024 10:38:58 GMTCache-Control: must-revalidate, max-age3Content-Length: 93296Connection: keep-aliveDate: Wed, 17 Jul 2024 13:26:53 GMTEO-LOG-UUID: 16750570045839536623EO-Cache-Status: MISS !DOCTYPE html>html langzh-CN>head> meta charsetUTF-8 /> meta nameviewport contentwidthdevice-width, initial-scale1 />meta namerobots contentmax-image-preview:large />title>山维空间 – 肉山的生活记录和技术分享/title>link reldns-prefetch href//code.jquery.com />link relalternate typeapplication/rss+xml title山维空间 » Feed hrefhttps://blog.meathill.com/feed />link relalternate typeapplication/rss+xml title山维空间 » 评论 Feed hrefhttps://blog.meathill.com/comments/feed />style idwp-block-site-title-inline-css>:root :where(.wp-block-site-title a){color:inherit}/style>style idwp-block-navigation-link-inline-css>.wp-block-navigation .wp-block-navigation-item__label{overflow-wrap:break-word}.wp-block-navigation .wp-block-navigation-item__description{display:none}.link-ui-tools{border-top:1px solid #f0f0f0;padding:8px}.link-ui-block-inserter{padding-top:8px}.link-ui-block-inserter__back{margin-left:8px;text-transform:uppercase}/style>style idwp-block-search-inline-css>.wp-block-search__button{margin-left:10px;word-break:normal}.wp-block-search__button.has-icon{line-height:0}.wp-block-search__button svg{fill:currentColor;height:1.25em;min-height:24px;min-width:24px;vertical-align:text-bottom;width:1.25em}:where(.wp-block-search__button){border:1px solid #ccc;padding:6px 10px}.wp-block-search__inside-wrapper{display:flex;flex:auto;flex-wrap:nowrap;max-width:100%}.wp-block-search__label{width:100%}.wp-block-search__input{appearance:none;border:1px solid #949494;flex-grow:1;margin-left:0;margin-right:0;min-width:3rem;padding:8px;text-decoration:unset!important}.wp-block-search.wp-block-search__button-only .wp-block-search__button{flex-shrink:0;margin-left:0;max-width:100%}.wp-block-search.wp-block-search__button-only .wp-block-search__buttonaria-expandedtrue{max-width:calc(100% - 100px)}.wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper{min-width:0!important;transition-property:width}.wp-block-search.wp-block-search__button-only .wp-block-search__input{flex-basis:100%;transition-duration:.3s}.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden,.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper{overflow:hidden}.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__input{border-left-width:0!important;border-right-width:0!important;flex-basis:0;flex-grow:0;margin:0;min-width:0!important;padding-left:0!important;padding-right:0!important;width:0!important}:where(.wp-block-search__input){font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-transform:inherit}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper){border:1px solid #949494;box-sizing:border-box;padding:4px}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input{border:none;border-radius:0;padding:0 4px}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input:focus{outline:none}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) :where(.wp-block-search__button){padding:4px 8px}.wp-block-search.aligncenter .wp-block-search__inside-wrapper{margin:auto}.wp-blockdata-alignright .wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper{float:right}/style>link relstylesheet idwp-block-navigation-css hrefhttps://blog.meathill.com/wp-content/plugins/gutenberg/build/block-library/blocks/navigation/style.css?ver18.7.1 mediaall />style idwp-block-group-inline-css>.wp-block-group{box-sizing:border-box}:where(.wp-block-group.wp-block-group-is-layout-constrained){position:relative}/style>style idwp-block-heading-inline-css>h1.has-background,h2.has-background,h3.has-background,h4.has-background,h5.has-background,h6.has-background{padding:1.25em 2.375em}h1.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h1.has-text-align-rightstyle*writing-mode:where(style*vertical-rl),h2.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h2.has-text-align-rightstyle*writing-mode:where(style*vertical-rl),h3.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h3.has-text-align-rightstyle*writing-mode:where(style*vertical-rl),h4.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h4.has-text-align-rightstyle*writing-mode:where(style*vertical-rl),h5.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h5.has-text-align-rightstyle*writing-mode:where(style*vertical-rl),h6.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h6.has-text-align-rightstyle*writing-mode:where(style*vertical-rl){rotate:180deg}/style>style idwp-block-post-featured-image-inline-css>.wp-block-post-featured-image{margin-left:0;margin-right:0}.wp-block-post-featured-image a{display:block;height:100%}.wp-block-post-featured-image img{box-sizing:border-box;height:auto;max-width:100%;vertical-align:bottom;width:100%}.wp-block-post-featured-image.alignfull img,.wp-block-post-featured-image.alignwide img{width:100%}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim{background-color:#000;inset:0;position:absolute}.wp-block-post-featured-image{position:relative}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-gradient{background-color:initial}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-0{opacity:0}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-10{opacity:.1}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-20{opacity:.2}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-30{opacity:.3}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-40{opacity:.4}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-50{opacity:.5}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-60{opacity:.6}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-70{opacity:.7}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-80{opacity:.8}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-90{opacity:.9}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-100{opacity:1}.wp-block-post-featured-image:where(.alignleft,.alignright){width:100%}/style>style idwp-block-post-title-inline-css>.wp-block-post-title{box-sizing:border-box;word-break:break-word}.wp-block-post-title a{display:inline-block}/style>style idwp-block-paragraph-inline-css>.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-leftstyle*writing-mode:vertical-lr,p.has-text-align-rightstyle*writing-mode:vertical-rl{rotate:180deg}/style>style idwp-block-quote-inline-css>.wp-block-quote{box-sizing:border-box;overflow-wrap:break-word}.wp-block-quote.is-large:where(:not(.is-style-plain)),.wp-block-quote.is-style-large:where(:not(.is-style-plain)){margin-bottom:1em;padding:0 1em}.wp-block-quote.is-large:where(:not(.is-style-plain)) p,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) p{font-size:1.5em;font-style:italic;line-height:1.6}.wp-block-quote.is-large:where(:not(.is-style-plain)) cite,.wp-block-quote.is-large:where(:not(.is-style-plain)) footer,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) cite,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) footer{font-size:1.125em;text-align:right}.wp-block-quote>cite{display:block}/style>style idwp-block-post-excerpt-inline-css>:where(.wp-block-post-excerpt){margin-bottom:var(--wp--style--block-gap);margin-top:var(--wp--style--block-gap)}.wp-block-post-excerpt__excerpt{margin-bottom:0;margin-top:0}.wp-block-post-excerpt__more-text{margin-bottom:0;margin-top:var(--wp--style--block-gap)}.wp-block-post-excerpt__more-link{display:inline-block}/style>style idwp-block-post-date-inline-css>.wp-block-post-date{box-sizing:border-box}/style>style idwp-block-spacer-inline-css>.wp-block-spacer{clear:both}/style>style idwp-block-post-template-inline-css>.wp-block-post-template{list-style:none;margin-bottom:0;margin-top:0;max-width:100%;padding:0}.wp-block-post-template.is-flex-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:1.25em}.wp-block-post-template.is-flex-container>li{margin:0;width:100%}@media (min-width:600px){.wp-block-post-template.is-flex-container.is-flex-container.columns-2>li{width:calc(50% - .625em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-3>li{width:calc(33.33333% - .83333em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-4>li{width:calc(25% - .9375em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-5>li{width:calc(20% - 1em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-6>li{width:calc(16.66667% - 1.04167em)}}@media (max-width:600px){.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid{grid-template-columns:1fr}}.wp-block-post-template-is-layout-constrained>li>.alignright,.wp-block-post-template-is-layout-flow>li>.alignright{float:right;margin-inline-end:0;margin-inline-start:2em}.wp-block-post-template-is-layout-constrained>li>.alignleft,.wp-block-post-template-is-layout-flow>li>.alignleft{float:left;margin-inline-end:2em;margin-inline-start:0}.wp-block-post-template-is-layout-constrained>li>.aligncenter,.wp-block-post-template-is-layout-flow>li>.aligncenter{margin-inline-end:auto;margin-inline-start:auto}/style>style idwp-block-query-pagination-inline-css>.wp-block-query-pagination>.wp-block-query-pagination-next,.wp-block-query-pagination>.wp-block-query-pagination-numbers,.wp-block-query-pagination>.wp-block-query-pagination-previous{margin-bottom:.5em;margin-right:.5em}.wp-block-query-pagination>.wp-block-query-pagination-next:last-child,.wp-block-query-pagination>.wp-block-query-pagination-numbers:last-child,.wp-block-query-pagination>.wp-block-query-pagination-previous:last-child{margin-right:0}.wp-block-query-pagination.is-content-justification-space-between>.wp-block-query-pagination-next:last-of-type{margin-inline-start:auto}.wp-block-query-pagination.is-content-justification-space-between>.wp-block-query-pagination-previous:first-child{margin-inline-end:auto}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow{display:inline-block;margin-right:1ch}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-query-pagination .wp-block-query-pagination-next-arrow{display:inline-block;margin-left:1ch}.wp-block-query-pagination .wp-block-query-pagination-next-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-query-pagination.aligncenter{justify-content:center}/style>style idwp-block-button-inline-css>.wp-block-button__link{box-sizing:border-box;cursor:pointer;display:inline-block;text-align:center;word-break:break-word}.wp-block-button__link.aligncenter{text-align:center}.wp-block-button__link.alignright{text-align:right}:where(.wp-block-button__link){border-radius:9999px;box-shadow:none;padding:calc(.667em + 2px) calc(1.333em + 2px);text-decoration:none}.wp-block-buttonstyle*text-decoration .wp-block-button__link{text-decoration:inherit}.wp-block-buttons>.wp-block-button.has-custom-width{max-width:none}.wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link{width:100%}.wp-block-buttons>.wp-block-button.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons>.wp-block-button.wp-block-button__width-25{width:calc(25% - var(--wp--style--block-gap, .5em)*.75)}.wp-block-buttons>.wp-block-button.wp-block-button__width-50{width:calc(50% - var(--wp--style--block-gap, .5em)*.5)}.wp-block-buttons>.wp-block-button.wp-block-button__width-75{width:calc(75% - var(--wp--style--block-gap, .5em)*.25)}.wp-block-buttons>.wp-block-button.wp-block-button__width-100{flex-basis:100%;width:100%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-25{width:25%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-50{width:50%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-75{width:75%}.wp-block-button.is-style-squared,.wp-block-button__link.wp-block-button.is-style-squared{border-radius:0}.wp-block-button.no-border-radius,.wp-block-button__link.no-border-radius{border-radius:0!important}:root :where(.wp-block-button .wp-block-button__link.is-style-outline),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link){border:2px solid;padding:.667em 1.333em}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color)){color:currentColor}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-background)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background)){background-color:initial;background-image:none}/style>style idwp-block-buttons-inline-css>.wp-block-buttons.is-vertical{flex-direction:column}.wp-block-buttons.is-vertical>.wp-block-button:last-child{margin-bottom:0}.wp-block-buttons>.wp-block-button{display:inline-block;margin:0}.wp-block-buttons.is-content-justification-left{justify-content:flex-start}.wp-block-buttons.is-content-justification-left.is-vertical{align-items:flex-start}.wp-block-buttons.is-content-justification-center{justify-content:center}.wp-block-buttons.is-content-justification-center.is-vertical{align-items:center}.wp-block-buttons.is-content-justification-right{justify-content:flex-end}.wp-block-buttons.is-content-justification-right.is-vertical{align-items:flex-end}.wp-block-buttons.is-content-justification-space-between{justify-content:space-between}.wp-block-buttons.aligncenter{text-align:center}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block-button.aligncenter{margin-left:auto;margin-right:auto;width:100%}.wp-block-buttonsstyle*text-decoration .wp-block-button,.wp-block-buttonsstyle*text-decoration .wp-block-button__link{text-decoration:inherit}.wp-block-buttons.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-button.aligncenter{text-align:center}/style>style idwp-block-latest-posts-inline-css>.wp-block-latest-posts{box-sizing:border-box}.wp-block-latest-posts.alignleft{margin-right:2em}.wp-block-latest-posts.alignright{margin-left:2em}.wp-block-latest-posts.wp-block-latest-posts__list{list-style:none}.wp-block-latest-posts.wp-block-latest-posts__list li{clear:both;overflow-wrap:break-word}.wp-block-latest-posts.is-grid{display:flex;flex-wrap:wrap}.wp-block-latest-posts.is-grid li{margin:0 1.25em 1.25em 0;width:100%}@media (min-width:600px){.wp-block-latest-posts.columns-2 li{width:calc(50% - .625em)}.wp-block-latest-posts.columns-2 li:nth-child(2n){margin-right:0}.wp-block-latest-posts.columns-3 li{width:calc(33.33333% - .83333em)}.wp-block-latest-posts.columns-3 li:nth-child(3n){margin-right:0}.wp-block-latest-posts.columns-4 li{width:calc(25% - .9375em)}.wp-block-latest-posts.columns-4 li:nth-child(4n){margin-right:0}.wp-block-latest-posts.columns-5 li{width:calc(20% - 1em)}.wp-block-latest-posts.columns-5 li:nth-child(5n){margin-right:0}.wp-block-latest-posts.columns-6 li{width:calc(16.66667% - 1.04167em)}.wp-block-latest-posts.columns-6 li:nth-child(6n){margin-right:0}}:root :where(.wp-block-latest-posts.is-grid){padding:0}:root :where(.wp-block-latest-posts.wp-block-latest-posts__list){padding-left:0}.wp-block-latest-posts__post-author,.wp-block-latest-posts__post-date{display:block;font-size:.8125em}.wp-block-latest-posts__post-excerpt{margin-bottom:1em;margin-top:.5em}.wp-block-latest-posts__featured-image a{display:inline-block}.wp-block-latest-posts__featured-image img{height:auto;max-width:100%;width:auto}.wp-block-latest-posts__featured-image.alignleft{float:left;margin-right:1em}.wp-block-latest-posts__featured-image.alignright{float:right;margin-left:1em}.wp-block-latest-posts__featured-image.aligncenter{margin-bottom:1em;text-align:center}/style>style idwp-block-separator-inline-css>@charset UTF-8;.wp-block-separator{border:none;border-top:2px solid}:root :where(.wp-block-separator.is-style-dots){height:auto;line-height:1;text-align:center}:root :where(.wp-block-separator.is-style-dots):before{color:currentColor;content:···;font-family:serif;font-size:1.5em;letter-spacing:2em;padding-left:2em}.wp-block-separator.is-style-dots{background:none!important;border:none!important}/style>style idwp-block-columns-inline-css>.wp-block-columns{align-items:normal!important;box-sizing:border-box;display:flex;flex-wrap:wrap!important}@media (min-width:782px){.wp-block-columns{flex-wrap:nowrap!important}}.wp-block-columns.are-vertically-aligned-top{align-items:flex-start}.wp-block-columns.are-vertically-aligned-center{align-items:center}.wp-block-columns.are-vertically-aligned-bottom{align-items:flex-end}@media (max-width:781px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:100%!important}}@media (min-width:782px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-columnstyle*flex-basis{flex-grow:0}}.wp-block-columns.is-not-stacked-on-mobile{flex-wrap:nowrap!important}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-columnstyle*flex-basis{flex-grow:0}:where(.wp-block-columns){margin-bottom:1.75em}:where(.wp-block-columns.has-background){padding:1.25em 2.375em}.wp-block-column{flex-grow:1;min-width:0;overflow-wrap:break-word;word-break:break-word}.wp-block-column.is-vertically-aligned-top{align-self:flex-start}.wp-block-column.is-vertically-aligned-center{align-self:center}.wp-block-column.is-vertically-aligned-bottom{align-self:flex-end}.wp-block-column.is-vertically-aligned-stretch{align-self:stretch}.wp-block-column.is-vertically-aligned-bottom,.wp-block-column.is-vertically-aligned-center,.wp-block-column.is-vertically-aligned-top{width:100%}/style>link relstylesheet idwp-block-library-css hrefhttps://blog.meathill.com/wp-content/plugins/gutenberg/build/block-library/common.css?ver18.7.1 mediaall />style idwp-block-template-skip-link-inline-css> .skip-link.screen-reader-text { border: 0; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; } .skip-link.screen-reader-text:focus { background-color: #eee; clip: auto !important; clip-path: none; color: #444; display: block; font-size: 1em; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; }/style>link relstylesheet idmkaz-code-syntax-prism-css-css hrefhttps://blog.meathill.com/wp-content/plugins/code-syntax-block/assets/prism-a11y-dark.css?ver1715218883 mediaall />style idglobal-styles-inline-css>:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--base: #ffffff;--wp--preset--color--contrast: #000000;--wp--preset--color--primary: #9DFF20;--wp--preset--color--secondary: #345C00;--wp--preset--color--tertiary: #F6F6F6;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.227), 1rem);--wp--preset--font-size--medium: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.227), 1.125rem);--wp--preset--font-size--large: clamp(1.75rem, 1.75rem + ((1vw - 0.2rem) * 0.227), 1.875rem);--wp--preset--font-size--x-large: 2.25rem;--wp--preset--font-size--xx-large: clamp(6.1rem, 6.1rem + ((1vw - 0.2rem) * 7.091), 10rem);--wp--preset--font-family--dm-sans: DM Sans, sans-serif;--wp--preset--font-family--ibm-plex-mono: IBM Plex Mono, monospace;--wp--preset--font-family--inter: Inter, sans-serif;--wp--preset--font-family--system-font: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;--wp--preset--font-family--source-serif-pro: Source Serif Pro, serif;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: clamp(1.5rem, 5vw, 2rem);--wp--preset--spacing--40: clamp(1.8rem, 1.8rem + ((1vw - 0.48rem) * 2.885), 3rem);--wp--preset--spacing--50: clamp(2.5rem, 8vw, 4.5rem);--wp--preset--spacing--60: clamp(3.75rem, 10vw, 7rem);--wp--preset--spacing--70: clamp(5rem, 5.25rem + ((1vw - 0.48rem) * 9.096), 8rem);--wp--preset--spacing--80: clamp(7rem, 14vw, 11rem);--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:root { --wp--style--global--content-size: 650px;--wp--style--global--wide-size: 1200px; }:where(body) { margin: 0; }.wp-site-blocks { padding-top: var(--wp--style--root--padding-top); padding-bottom: var(--wp--style--root--padding-bottom); }.has-global-padding { padding-right: var(--wp--style--root--padding-right); padding-left: var(--wp--style--root--padding-left); }.has-global-padding > .alignfull { margin-right: calc(var(--wp--style--root--padding-right) * -1); margin-left: calc(var(--wp--style--root--padding-left) * -1); }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull, .alignwide)) { padding-right: 0; padding-left: 0; }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull, .alignwide)) > .alignfull { margin-left: 0; margin-right: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.wp-site-blocks) > * { margin-block-start: 1.5rem; margin-block-end: 0; }:where(.wp-site-blocks) > :first-child { margin-block-start: 0; }:where(.wp-site-blocks) > :last-child { margin-block-end: 0; }:root { --wp--style--block-gap: 1.5rem; }.is-layout-flow > :first-child{margin-block-start: 0;}.is-layout-flow > :last-child{margin-block-end: 0;}.is-layout-flow > *{margin-block-start: 1.5rem;margin-block-end: 0;}.is-layout-constrained > :first-child{margin-block-start: 0;}.is-layout-constrained > :last-child{margin-block-end: 0;}.is-layout-constrained > *{margin-block-start: 1.5rem;margin-block-end: 0;}.is-layout-flex {gap: 1.5rem;}.is-layout-grid {gap: 1.5rem;}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:root :where(body){background-color: var(--wp--preset--color--base);color: var(--wp--preset--color--contrast);font-family: var(--wp--preset--font-family--system-font);font-size: var(--wp--preset--font-size--medium);line-height: 1.6;--wp--style--root--padding-top: var(--wp--preset--spacing--40);--wp--style--root--padding-right: var(--wp--preset--spacing--30);--wp--style--root--padding-bottom: var(--wp--preset--spacing--40);--wp--style--root--padding-left: var(--wp--preset--spacing--30);}:root :where(a:where(:not(.wp-element-button))){color: var(--wp--preset--color--contrast);text-decoration: underline;}:root :where(a:where(:not(.wp-element-button)):hover){text-decoration: none;}:root :where(a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}:root :where(a:where(:not(.wp-element-button)):active){color: var(--wp--preset--color--secondary);text-decoration: none;}:root :where(h1, h2, h3, h4, h5, h6){font-weight: 400;line-height: 1.4;}:root :where(h1){font-size: clamp(2.032rem, 2.032rem + ((1vw - 0.2rem) * 2.896), 3.625rem);line-height: 1.2;}:root :where(h2){font-size: clamp(2.625rem, calc(2.625rem + ((1vw - 0.48rem) * 8.4135)), 3.25rem);line-height: 1.2;}:root :where(h3){font-size: var(--wp--preset--font-size--x-large);}:root :where(h4){font-size: var(--wp--preset--font-size--large);}:root :where(h5){font-size: var(--wp--preset--font-size--medium);font-weight: 700;text-transform: uppercase;}:root :where(h6){font-size: var(--wp--preset--font-size--medium);text-transform: uppercase;}:root :where(.wp-element-button, .wp-block-button__link){background-color: var(--wp--preset--color--primary);border-radius: 0;border-width: 0;color: var(--wp--preset--color--contrast);font-family: inherit;font-size: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;}:root :where(.wp-element-button:visited, .wp-block-button__link:visited){color: var(--wp--preset--color--contrast);}:root :where(.wp-element-button:hover, .wp-block-button__link:hover){background-color: var(--wp--preset--color--contrast);color: var(--wp--preset--color--base);}:root :where(.wp-element-button:focus, .wp-block-button__link:focus){background-color: var(--wp--preset--color--contrast);color: var(--wp--preset--color--base);}:root :where(.wp-element-button:active, .wp-block-button__link:active){background-color: var(--wp--preset--color--secondary);color: var(--wp--preset--color--base);}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-base-color{color: var(--wp--preset--color--base) !important;}.has-contrast-color{color: var(--wp--preset--color--contrast) !important;}.has-primary-color{color: var(--wp--preset--color--primary) !important;}.has-secondary-color{color: var(--wp--preset--color--secondary) !important;}.has-tertiary-color{color: var(--wp--preset--color--tertiary) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-base-background-color{background-color: var(--wp--preset--color--base) !important;}.has-contrast-background-color{background-color: var(--wp--preset--color--contrast) !important;}.has-primary-background-color{background-color: var(--wp--preset--color--primary) !important;}.has-secondary-background-color{background-color: var(--wp--preset--color--secondary) !important;}.has-tertiary-background-color{background-color: var(--wp--preset--color--tertiary) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-base-border-color{border-color: var(--wp--preset--color--base) !important;}.has-contrast-border-color{border-color: var(--wp--preset--color--contrast) !important;}.has-primary-border-color{border-color: var(--wp--preset--color--primary) !important;}.has-secondary-border-color{border-color: var(--wp--preset--color--secondary) !important;}.has-tertiary-border-color{border-color: var(--wp--preset--color--tertiary) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-xx-large-font-size{font-size: var(--wp--preset--font-size--xx-large) !important;}.has-dm-sans-font-family{font-family: var(--wp--preset--font-family--dm-sans) !important;}.has-ibm-plex-mono-font-family{font-family: var(--wp--preset--font-family--ibm-plex-mono) !important;}.has-inter-font-family{font-family: var(--wp--preset--font-family--inter) !important;}.has-system-font-font-family{font-family: var(--wp--preset--font-family--system-font) !important;}.has-source-serif-pro-font-family{font-family: var(--wp--preset--font-family--source-serif-pro) !important;}.wp-block-table-of-contents { border: 1px solid #ddd; position: relative;}.wp-block-table-of-contents::after { content: TOC; position: absolute; top: .5rem; right: .5rem; background: #ccc; line-height: 2; padding: 0 1em; font-size: 12px;}iframe { display: block;}.max-h-36 { max-height: 9rem;}.max-h-36 img { height: 100%;}:root :where(.wp-block-navigation){font-size: var(--wp--preset--font-size--small);}:root :where(.wp-block-navigation a:where(:not(.wp-element-button))){text-decoration: none;}:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):hover){text-decoration: underline;}:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):active){text-decoration: none;}:root :where(.wp-block-post-excerpt){font-size: var(--wp--preset--font-size--medium);}:root :where(.wp-block-post-date){font-size: var(--wp--preset--font-size--small);font-weight: 400;}:root :where(.wp-block-post-date a:where(:not(.wp-element-button))){text-decoration: none;}:root :where(.wp-block-post-date a:where(:not(.wp-element-button)):hover){text-decoration: underline;}:root :where(.wp-block-post-title){font-weight: 400;margin-top: 1.25rem;margin-bottom: 1.25rem;}:root :where(.wp-block-post-title a:where(:not(.wp-element-button))){text-decoration: none;}:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):hover){text-decoration: underline;}:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):active){color: var(--wp--preset--color--secondary);text-decoration: none;}:root :where(.wp-block-query-pagination){font-size: var(--wp--preset--font-size--small);font-weight: 400;}:root :where(.wp-block-query-pagination a:where(:not(.wp-element-button))){text-decoration: none;}:root :where(.wp-block-query-pagination a:where(:not(.wp-element-button)):hover){text-decoration: underline;}:root :where(.wp-block-quote){border-left-color: inherit;border-left-width: 1px;border-left-style: solid;padding-right: var(--wp--preset--spacing--30);padding-left: var(--wp--preset--spacing--30);}:root :where(.wp-block-quote cite){font-size: var(--wp--preset--font-size--small);font-style: normal;}:root :where(.wp-block-site-title){font-size: var(--wp--preset--font-size--medium);font-weight: normal;line-height: 1.4;}:root :where(.wp-block-site-title a:where(:not(.wp-element-button))){text-decoration: none;}:root :where(.wp-block-site-title a:where(:not(.wp-element-button)):hover){text-decoration: underline;}:root :where(.wp-block-site-title a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}:root :where(.wp-block-site-title a:where(:not(.wp-element-button)):active){color: var(--wp--preset--color--secondary);text-decoration: none;}:root :where(.wp-block-separator){}:root :where(.wp-block-separator:not(.is-style-wide):not(.is-style-dots):not(.alignwide):not(.alignfull)){width: 100px}/style>style idcore-block-supports-inline-css>.wp-container-core-navigation-is-layout-1{justify-content:flex-end;}.wp-container-core-group-is-layout-1{justify-content:space-between;}.wp-container-core-query-pagination-is-layout-1{justify-content:space-between;}.wp-container-core-columns-is-layout-1{flex-wrap:nowrap;}.wp-container-core-group-is-layout-4{justify-content:space-between;}/style>link relhttps://api.w.org/ hrefhttps://blog.meathill.com/wp-json/ />link relEditURI typeapplication/rsd+xml titleRSD hrefhttps://blog.meathill.com/xmlrpc.php?rsd />meta namegenerator contentWordPress 6.5.5 />script idwp-load-polyfill-importmap>( HTMLScriptElement.supports && HTMLScriptElement.supports(importmap) ) || document.write( script srchttps://blog.meathill.com/wp-includes/js/dist/vendor/wp-polyfill-importmap.min.js?ver1.8.2>/scr + ipt> );/script>script typeimportmap idwp-importmap>{imports:{@wordpress\/interactivity:https:\/\/blog.meathill.com\/wp-content\/plugins\/gutenberg\/build\/interactivity\/index.min.js?ver18.7.1}}/script>script typemodule srchttps://blog.meathill.com/wp-content/plugins/gutenberg/build/interactivity/navigation.min.js?ver18.7.1 id@wordpress/block-library/navigation-js-module>/script>link relmodulepreload hrefhttps://blog.meathill.com/wp-content/plugins/gutenberg/build/interactivity/index.min.js?ver18.7.1 id@wordpress/interactivity-js-modulepreload>style idwp-fonts-local>@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Regular.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:DM Sans;font-style:italic;font-weight:400;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Regular-Italic.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Bold.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:DM Sans;font-style:italic;font-weight:700;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Bold-Italic.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:300;font-display:block;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Light.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:block;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Regular.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:IBM Plex Mono;font-style:italic;font-weight:400;font-display:block;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Italic.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:block;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Bold.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:Inter;font-style:normal;font-weight:200 900;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/inter/Inter-VariableFont_slnt,wght.ttf) format(truetype);font-stretch:normal;}@font-face{font-family:Source Serif Pro;font-style:normal;font-weight:200 900;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/source-serif-pro/SourceSerif4Variable-Roman.ttf.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:Source Serif Pro;font-style:italic;font-weight:200 900;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/source-serif-pro/SourceSerif4Variable-Italic.ttf.woff2) format(woff2);font-stretch:normal;}/style>link relicon hrefhttps://blog.meathill.com/wp-content/uploads/2014/12/meathill-5493c7abv1_site_icon-32x32.png sizes32x32 />link relicon hrefhttps://blog.meathill.com/wp-content/uploads/2014/12/meathill-5493c7abv1_site_icon-256x256.png sizes192x192 />link relapple-touch-icon hrefhttps://blog.meathill.com/wp-content/uploads/2014/12/meathill-5493c7abv1_site_icon-256x256.png />meta namemsapplication-TileImage contenthttps://blog.meathill.com/wp-content/uploads/2014/12/meathill-5493c7abv1_site_icon-512x510.png />/head>body classhome blog wp-embed-responsive>div classwp-site-blocks>header classwp-block-template-part>div classwp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained> div classwp-block-group alignwide is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-1 wp-block-group-is-layout-flex stylepadding-bottom:var(--wp--preset--spacing--40)> p classwp-block-site-title>a hrefhttps://blog.meathill.com target_self relhome aria-currentpage>山维空间/a>/p> nav classis-responsive items-justified-right wp-block-navigation is-content-justification-right is-layout-flex wp-container-core-navigation-is-layout-1 wp-block-navigation-is-layout-flex aria-label data-wp-interactivecore/navigation data-wp-context{overlayOpenedBy:{click:false,hover:false,focus:false},type:overlay,roleAttribute:,ariaLabel:\u83dc\u5355}>button aria-haspopupdialog aria-label打开菜单 classwp-block-navigation__responsive-container-open data-wp-on-async--clickactions.openMenuOnClick data-wp-on--keydownactions.handleMenuKeydown >svg width24 height24 xmlnshttp://www.w3.org/2000/svg viewBox0 0 24 24 aria-hiddentrue focusablefalse>rect x4 y7.5 width16 height1.5 />rect x4 y15 width16 height1.5 />/svg>/button> div classwp-block-navigation__responsive-container idmodal-2 data-wp-class--has-modal-openstate.isMenuOpen data-wp-class--is-menu-openstate.isMenuOpen data-wp-watchcallbacks.initMenu data-wp-on--keydownactions.handleMenuKeydown data-wp-on-async--focusoutactions.handleMenuFocusout tabindex-1 > div classwp-block-navigation__responsive-close tabindex-1> div classwp-block-navigation__responsive-dialog data-wp-bind--aria-modalstate.ariaModal data-wp-bind--aria-labelstate.ariaLabel data-wp-bind--rolestate.roleAttribute > button aria-label关闭菜单 classwp-block-navigation__responsive-container-close data-wp-on-async--clickactions.closeMenuOnClick >svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 24 24 width24 height24 aria-hiddentrue focusablefalse>path dM13 11.8l6.1-6.3-1-1-6.1 6.2-6.1-6.2-1 1 6.1 6.3-6.5 6.7 1 1 6.5-6.6 6.5 6.6 1-1z>/path>/svg>/button> div classwp-block-navigation__responsive-container-content data-wp-watchcallbacks.focusFirstElement idmodal-2-content> ul classwp-block-navigation__container is-responsive items-justified-right wp-block-navigation>li classwp-block-navigation-item current-menu-item wp-block-home-link>a classwp-block-home-link__content wp-block-navigation-item__content hrefhttps://blog.meathill.com relhome aria-currentpage>首页/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content href/about>span classwp-block-navigation-item__label>关于我/span>/a>/li>li data-wp-context{ "submenuOpenedBy": { "click": false, "hover": false, "focus": false }, "type": "submenu" } data-wp-interactivecore/navigation data-wp-on--focusoutactions.handleMenuFocusout data-wp-on--keydownactions.handleMenuKeydown data-wp-on-async--mouseenteractions.openMenuOnHover data-wp-on-async--mouseleaveactions.closeMenuOnHover data-wp-watchcallbacks.initMenu tabindex-1 class wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu>a classwp-block-navigation-item__content href/tech>技术分享/a>button data-wp-bind--aria-expandedstate.isMenuOpen data-wp-on-async--clickactions.toggleMenuOnClick aria-label技术分享 子菜单 classwp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle >svg xmlnshttp://www.w3.org/2000/svg width12 height12 viewBox0 0 12 12 fillnone aria-hiddentrue focusablefalse>path dM1.50002 4L6.00002 8L10.5 4 stroke-width1.5>/path>/svg>/button>ul data-wp-on-async--focusactions.openMenuOnFocus classwp-block-navigation__submenu-container wp-block-navigation-submenu>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content href/category/js>span classwp-block-navigation-item__label>JavaScript/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content href/category/ai>span classwp-block-navigation-item__label>AI/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://meathill.com/gitbook-design-patterns-in-jquery/>span classwp-block-navigation-item__label>从 jQuery 里学习设计模式/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://meathill.gitbooks.io/javascript-async-tutorial/content/>span classwp-block-navigation-item__label>JavaScript 异步开发全攻略/span>/a>/li>/ul>/li>li data-wp-context{ "submenuOpenedBy": { "click": false, "hover": false, "focus": false }, "type": "submenu" } data-wp-interactivecore/navigation data-wp-on--focusoutactions.handleMenuFocusout data-wp-on--keydownactions.handleMenuKeydown data-wp-on-async--mouseenteractions.openMenuOnHover data-wp-on-async--mouseleaveactions.closeMenuOnHover data-wp-watchcallbacks.initMenu tabindex-1 class wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu>a classwp-block-navigation-item__content hrefhttp://%E4%BD%9C%E5%93%81%E9%9B%86>作品集/a>button data-wp-bind--aria-expandedstate.isMenuOpen data-wp-on-async--clickactions.toggleMenuOnClick aria-label作品集 子菜单 classwp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle >svg xmlnshttp://www.w3.org/2000/svg width12 height12 viewBox0 0 12 12 fillnone aria-hiddentrue focusablefalse>path dM1.50002 4L6.00002 8L10.5 4 stroke-width1.5>/path>/svg>/button>ul data-wp-on-async--focusactions.openMenuOnFocus classwp-block-navigation__submenu-container wp-block-navigation-submenu>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://space.bilibili.com/7409098>span classwp-block-navigation-item__label>B 站视频/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://www.youtube.com/channel/UCBeD-XqErDK4tKy5FtZj8vg>span classwp-block-navigation-item__label>油管频道/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://github.com/meathill>span classwp-block-navigation-item__label>GitHub/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://baifo.life>span classwp-block-navigation-item__label>拜拜-网上拜佛,在线烧香/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://SoulScript.io>span classwp-block-navigation-item__label>SoulScript/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://mywordle.org>span classwp-block-navigation-item__label>Wordle 游戏/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://minesweeper.meathill.com>span classwp-block-navigation-item__label>扫雷游戏/span>/a>/li>/ul>/li>li data-wp-context{ "submenuOpenedBy": { "click": false, "hover": false, "focus": false }, "type": "submenu" } data-wp-interactivecore/navigation data-wp-on--focusoutactions.handleMenuFocusout data-wp-on--keydownactions.handleMenuKeydown data-wp-on-async--mouseenteractions.openMenuOnHover data-wp-on-async--mouseleaveactions.closeMenuOnHover data-wp-watchcallbacks.initMenu tabindex-1 class wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu>a classwp-block-navigation-item__content hrefhttp://%E5%90%84%E7%A7%8D%E4%BB%A3%E7%90%86>各种代理/a>button data-wp-bind--aria-expandedstate.isMenuOpen data-wp-on-async--clickactions.toggleMenuOnClick aria-label各种代理 子菜单 classwp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle >svg xmlnshttp://www.w3.org/2000/svg width12 height12 viewBox0 0 12 12 fillnone aria-hiddentrue focusablefalse>path dM1.50002 4L6.00002 8L10.5 4 stroke-width1.5>/path>/svg>/button>ul data-wp-on-async--focusactions.openMenuOnFocus classwp-block-navigation__submenu-container wp-block-navigation-submenu>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://zeabur.com?referralCodemeathill target_blank >span classwp-block-navigation-item__label>Zeabur(Vercel 竞品)/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://www.bright.cn/proxy-types/?utm_sourcebrand&utm_campaignbrnd-mkt_cn_SF_meathill&promomeathill target_blank >span classwp-block-navigation-item__label>Bright Data/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://www.vps000.org/?code465CF3>span classwp-block-navigation-item__label>Cisco AnyConnect 好好上网/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://leancloud.cn/?sourceF88KG861>span classwp-block-navigation-item__label>超好用的后端 LeanCloud/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://www.vultr.com/?ref7124198>span classwp-block-navigation-item__label>Vultr VPS/span>/a>/li>/ul>/li>/ul>form rolesearch methodget actionhttps://blog.meathill.com/ classwp-block-search__button-inside wp-block-search__icon-button wp-block-search >label classwp-block-search__label screen-reader-text forwp-block-search__input-1 >搜索/label>div classwp-block-search__inside-wrapper >input classwp-block-search__input idwp-block-search__input-1 placeholder搜索 value typesearch names required />button aria-label搜索 classwp-block-search__button has-icon wp-element-button typesubmit >svg classsearch-icon viewBox0 0 24 24 width24 height24> path dM13 5c-3.3 0-6 2.7-6 6 0 1.4.5 2.7 1.3 3.7l-3.8 3.8 1.1 1.1 3.8-3.8c1 .8 2.3 1.3 3.7 1.3 3.3 0 6-2.7 6-6S16.3 5 13 5zm0 10.5c-2.5 0-4.5-2-4.5-4.5s2-4.5 4.5-4.5 4.5 2 4.5 4.5-2 4.5-4.5 4.5z>/path> /svg>/button>/div>/form> /div> /div> /div> /div>/nav> /div> /div>/header>main classwp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained stylemargin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--70)>h1 classwp-block-heading alignwide stylemargin-bottom:var(--wp--preset--spacing--60)>Meathill 的技术与日常/h1>form rolesearch methodget actionhttps://blog.meathill.com/ classwp-block-search__button-outside wp-block-search__text-button wp-block-search >label classwp-block-search__label has-small-font-size forwp-block-search__input-3 >搜索/label>div classwp-block-search__inside-wrapper stylewidth: 100%>input classwp-block-search__input has-small-font-size idwp-block-search__input-3 placeholder value typesearch names required />button aria-label搜索 classwp-block-search__button has-small-font-size wp-element-button typesubmit >搜索/button>/div>/form>div classwp-block-query alignwide has-global-padding is-layout-constrained wp-block-query-is-layout-constrained>ul classis-flex-container columns-3 alignwide wp-block-post-template is-layout-flow wp-block-post-template-is-layout-flow>li classwp-block-post post-3160235 post type-post status-publish format-standard has-post-thumbnail sticky hentry category-web3 tag-hackquest-io tag-web3 tag-1411521>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/web3/hackquest-io-solidity-rust-web3-workshop.html target_self styleheight:max(15vw, 30vh)>img width800 height798 srchttps://blog.meathill.com/wp-content/uploads/2024/05/1.png classattachment-post-thumbnail size-post-thumbnail wp-post-image altSolidity/Rust 实战 — Web3 开发共学活动 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync fetchpriorityhigh srcsethttps://blog.meathill.com/wp-content/uploads/2024/05/1.png 800w, https://blog.meathill.com/wp-content/uploads/2024/05/1-320x320.png 320w, https://blog.meathill.com/wp-content/uploads/2024/05/1-768x766.png 768w sizes(max-width: 800px) 100vw, 800px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/web3/hackquest-io-solidity-rust-web3-workshop.html target_self >Solidity/Rust 实战 — Web3 开发共学活动/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>感谢赞助商 HackQuest.io 委托我发布本条消息。 Solidity/Rust 共学营信息清单 关于 … /p>/div>div classwp-block-post-date>time datetime2024-05-18T15:18:29+08:00>a hrefhttps://blog.meathill.com/web3/hackquest-io-solidity-rust-web3-workshop.html>2024年5月18日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-1420234 post type-post status-publish format-standard has-post-thumbnail sticky hentry category-tech tag-sponser>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/sponsers.html target_self styleheight:max(15vw, 30vh)>img width1080 height1440 srchttps://blog.meathill.com/wp-content/uploads/2022/10/78d45ea8aa7897b73f45f76edead85.jpg classattachment-post-thumbnail size-post-thumbnail wp-post-image alt鸣谢各位老板舰长赞助商 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync srcsethttps://blog.meathill.com/wp-content/uploads/2022/10/78d45ea8aa7897b73f45f76edead85.jpg 1080w, https://blog.meathill.com/wp-content/uploads/2022/10/78d45ea8aa7897b73f45f76edead85-768x1024.jpg 768w, https://blog.meathill.com/wp-content/uploads/2022/10/78d45ea8aa7897b73f45f76edead85-810x1080.jpg 810w, https://blog.meathill.com/wp-content/uploads/2022/10/78d45ea8aa7897b73f45f76edead85-240x320.jpg 240w sizes(max-width: 1080px) 100vw, 1080px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/sponsers.html target_self >鸣谢各位老板舰长赞助商/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>想来想去,决定开个页面用来供奉各位支持过我的老板。 赞助我,让我贡献更多内容吧! 欢迎在 GitHub 上赞助… /p>/div>div classwp-block-post-date>time datetime2023-06-11T22:27:27+08:00>a hrefhttps://blog.meathill.com/tech/sponsers.html>2023年6月11日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-4533 post type-post status-publish format-standard has-post-thumbnail sticky hentry category-tech>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/welcome-sticky.html target_self styleheight:max(15vw, 30vh)>img width1200 height1600 srchttps://blog.meathill.com/wp-content/uploads/2022/10/7.jpg classattachment-post-thumbnail size-post-thumbnail wp-post-image alt欢迎欢迎 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync srcsethttps://blog.meathill.com/wp-content/uploads/2022/10/7.jpg 1200w, https://blog.meathill.com/wp-content/uploads/2022/10/7-768x1024.jpg 768w, https://blog.meathill.com/wp-content/uploads/2022/10/7-810x1080.jpg 810w, https://blog.meathill.com/wp-content/uploads/2022/10/7-240x320.jpg 240w, https://blog.meathill.com/wp-content/uploads/2022/10/7-1152x1536.jpg 1152w sizes(max-width: 1200px) 100vw, 1200px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/welcome-sticky.html target_self >欢迎欢迎/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>欢迎来到我的博客,我是 Meathill,想了解我可以点 关于我。 除了程序员,我还是个兴趣使然的 Web 开… /p>/div>div classwp-block-post-date>time datetime2021-02-02T00:00:41+08:00>a hrefhttps://blog.meathill.com/tech/welcome-sticky.html>2021年2月2日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3400234 post type-post status-publish format-standard has-post-thumbnail hentry category-tech tag-cloudflare tag-cloudflare-pages tag-edge-computing tag-nuxt tag-serverless tag-vercel>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/moved-my-nuxt3-sites-from-vercel-to-cloudflarenuxt.html target_self styleheight:max(15vw, 30vh)>img width1600 height1200 srchttps://blog.meathill.com/wp-content/uploads/2024/07/1.webp classattachment-post-thumbnail size-post-thumbnail wp-post-image alt搬家记:从 Vercel 到 Cloudflare(Nuxt 项目x2) styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/07/1.webp 1600w, https://blog.meathill.com/wp-content/uploads/2024/07/1-1024x768.webp 1024w, https://blog.meathill.com/wp-content/uploads/2024/07/1-1440x1080.webp 1440w, https://blog.meathill.com/wp-content/uploads/2024/07/1-320x240.webp 320w, https://blog.meathill.com/wp-content/uploads/2024/07/1-768x576.webp 768w, https://blog.meathill.com/wp-content/uploads/2024/07/1-1536x1152.webp 1536w sizes(max-width: 1600px) 100vw, 1600px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/moved-my-nuxt3-sites-from-vercel-to-cloudflarenuxt.html target_self >搬家记:从 Vercel 到 Cloudflare(Nuxt 项目x2)/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>月底的时候,收到 Vercel 的邮件,提示我账号内有一些额度用量已经消耗 50%。我没在意,心想反正月底,马… /p>/div>div classwp-block-post-date>time datetime2024-07-06T19:49:40+08:00>a hrefhttps://blog.meathill.com/tech/moved-my-nuxt3-sites-from-vercel-to-cloudflarenuxt.html>2024年7月6日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-2170238 post type-post status-publish format-standard has-post-thumbnail hentry category-web tag-mediadevices tag-mediarecorder tag-nuxt tag-speech-to-text tag-stt tag-1471525>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/web/practical-tutorial-integrate-speech-to-text-on-webpage-1-record-in-browser.html target_self styleheight:max(15vw, 30vh)>img width1600 height1200 srchttps://blog.meathill.com/wp-content/uploads/2024/06/1.webp classattachment-post-thumbnail size-post-thumbnail wp-post-image alt【实用教程】在网页里集成语音输入:1. 在浏览器里完成录音 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/06/1.webp 1600w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1024x768.webp 1024w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1440x1080.webp 1440w, https://blog.meathill.com/wp-content/uploads/2024/06/1-320x240.webp 320w, https://blog.meathill.com/wp-content/uploads/2024/06/1-768x576.webp 768w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1536x1152.webp 1536w sizes(max-width: 1600px) 100vw, 1600px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/web/practical-tutorial-integrate-speech-to-text-on-webpage-1-record-in-browser.html target_self >【实用教程】在网页里集成语音输入:1. 在浏览器里完成录音/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>继续写实用教程。接下来准备讲解一下如何在网页里集成语音识别,语音输入的功能。也就是俗称的 STT(Speech… /p>/div>div classwp-block-post-date>time datetime2024-06-22T16:07:22+08:00>a hrefhttps://blog.meathill.com/web/practical-tutorial-integrate-speech-to-text-on-webpage-1-record-in-browser.html>2024年6月22日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3340236 post type-post status-publish format-standard has-post-thumbnail hentry category-fe tag-css tag-mobile tag-mobile-web tag-safari>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/fe/best-practices-for-mobile-web-height-adaption.html target_self styleheight:max(15vw, 30vh)>img width2560 height1920 srchttps://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-scaled.jpg classattachment-post-thumbnail size-post-thumbnail wp-post-image alt移动网页高度自适应最佳实践 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-scaled.jpg 2560w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-1024x768.jpg 1024w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-1440x1080.jpg 1440w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-320x240.jpg 320w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-768x576.jpg 768w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-1536x1152.jpg 1536w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-2048x1536.jpg 2048w sizes(max-width: 2560px) 100vw, 2560px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/fe/best-practices-for-mobile-web-height-adaption.html target_self >移动网页高度自适应最佳实践/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>移动 Web 开发就要在“螺蛳壳里做道场”。移动设备限于屏幕尺寸,不得已左支右绌,既要多呈现内容,又要保证功能… /p>/div>div classwp-block-post-date>time datetime2024-06-16T00:00:51+08:00>a hrefhttps://blog.meathill.com/tech/fe/best-practices-for-mobile-web-height-adaption.html>2024年6月16日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3280234 post type-post status-publish format-standard has-post-thumbnail hentry category-share tag-javascript tag-nuxt3 tag-ssr tag-vue tag-vue3 tag-vue3--nuxt3 tag-1213>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-4-ssr-and-useasyncdata.html target_self styleheight:max(15vw, 30vh)>img width1280 height720 srchttps://blog.meathill.com/wp-content/uploads/2024/06/1-1.png classattachment-post-thumbnail size-post-thumbnail wp-post-image alt【视频教程】技术栈大升级:Vue3 到 Nuxt3(4)深入理解 SSR 和 `useAsyncData` styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/06/1-1.png 1280w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1-1024x576.png 1024w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1-320x180.png 320w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1-768x432.png 768w sizes(max-width: 1280px) 100vw, 1280px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-4-ssr-and-useasyncdata.html target_self >【视频教程】技术栈大升级:Vue3 到 Nuxt3(4)深入理解 SSR 和 `useAsyncData`/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>2023 年,我个人最大的变化,是从 Vue3 SPA 应用向 Nuxt3 SSR 应用过渡,在预期可能存在 … /p>/div>div classwp-block-post-date>time datetime2024-06-10T21:37:12+08:00>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-4-ssr-and-useasyncdata.html>2024年6月10日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-2830234 post type-post status-publish format-standard has-post-thumbnail hentry category-share tag-nuxt3 tag-ssr tag-vue3 tag-vue3--nuxt3 tag-1213>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-2-and-3-upgrading-experience.html target_self styleheight:max(15vw, 30vh)>img width1200 height900 srchttps://blog.meathill.com/wp-content/uploads/2024/06/1.png classattachment-post-thumbnail size-post-thumbnail wp-post-image alt【视频教程】技术栈大升级:Vue3 到 Nuxt3(2-3)升级实战 – 基础知识,适配 SSR,页面路由 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/06/1.png 1200w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1024x768.png 1024w, https://blog.meathill.com/wp-content/uploads/2024/06/1-320x240.png 320w, https://blog.meathill.com/wp-content/uploads/2024/06/1-768x576.png 768w sizes(max-width: 1200px) 100vw, 1200px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-2-and-3-upgrading-experience.html target_self >【视频教程】技术栈大升级:Vue3 到 Nuxt3(2-3)升级实战 – 基础知识,适配 SSR,页面路由/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>2023 年,我个人最大的变化,是从 Vue3 SPA 应用向 Nuxt3 SSR 应用过渡,在预期可能存在 … /p>/div>div classwp-block-post-date>time datetime2024-06-02T20:50:14+08:00>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-2-and-3-upgrading-experience.html>2024年6月2日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3190234 post type-post status-publish format-standard has-post-thumbnail hentry category-js tag-audio tag-ios tag-macos tag-nuxt3 tag-safari>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/js/tips-for-playing-sound-in-ios-safari.html target_self styleheight:max(15vw, 30vh)>img width1600 height1200 srchttps://blog.meathill.com/wp-content/uploads/2024/05/1-1.webp classattachment-post-thumbnail size-post-thumbnail wp-post-image altiOS Safari 播放音频的技巧分享 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/05/1-1.webp 1600w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1-1024x768.webp 1024w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1-1440x1080.webp 1440w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1-320x240.webp 320w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1-768x576.webp 768w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1-1536x1152.webp 1536w sizes(max-width: 1600px) 100vw, 1600px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/js/tips-for-playing-sound-in-ios-safari.html target_self >iOS Safari 播放音频的技巧分享/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>开发 Web App 一直是个蛮尴尬的事情。一方面,Google 不断在推;PWA 等技术也越来越好;另一方面… /p>/div>div classwp-block-post-date>time datetime2024-05-25T16:51:01+08:00>a hrefhttps://blog.meathill.com/js/tips-for-playing-sound-in-ios-safari.html>2024年5月25日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3130236 post type-post status-publish format-standard has-post-thumbnail hentry category-extension category-tech tag-chrome-extension tag-chrome-identity tag-google-sso tag-supabase>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/tutorial-how-to-integrate-google-sso-in-browser-extension-2.html target_self styleheight:max(15vw, 30vh)>img width1920 height2560 srchttps://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-scaled.jpg classattachment-post-thumbnail size-post-thumbnail wp-post-image alt【教程】浏览器扩展中实现一键登录 Google(2) styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-scaled.jpg 1920w, https://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-768x1024.jpg 768w, https://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-810x1080.jpg 810w, https://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-240x320.jpg 240w, https://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-1152x1536.jpg 1152w, https://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-1536x2048.jpg 1536w sizes(max-width: 1920px) 100vw, 1920px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/tutorial-how-to-integrate-google-sso-in-browser-extension-2.html target_self >【教程】浏览器扩展中实现一键登录 Google(2)/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>本文接续前一篇 【教程】浏览器扩展中实现一键登录 Google(1),重点介绍代码相关的部分。 SSO 简介 … /p>/div>div classwp-block-post-date>time datetime2024-05-11T19:35:03+08:00>a hrefhttps://blog.meathill.com/tech/tutorial-how-to-integrate-google-sso-in-browser-extension-2.html>2024年5月11日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3040234 post type-post status-publish format-standard has-post-thumbnail hentry category-tech tag-zeabur tag-1411521>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/thanks-to-zeabur-for-being-the-first-sponsor-of-this-site.html target_self styleheight:max(15vw, 30vh)>img width1600 height1200 srchttps://blog.meathill.com/wp-content/uploads/2024/05/1.webp classattachment-post-thumbnail size-post-thumbnail wp-post-image alt感谢 Zeabur 成为本站第一位赞助商 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/05/1.webp 1600w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1024x768.webp 1024w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1440x1080.webp 1440w, https://blog.meathill.com/wp-content/uploads/2024/05/1-320x240.webp 320w, https://blog.meathill.com/wp-content/uploads/2024/05/1-768x576.webp 768w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1536x1152.webp 1536w sizes(max-width: 1600px) 100vw, 1600px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/thanks-to-zeabur-for-being-the-first-sponsor-of-this-site.html target_self >感谢 Zeabur 成为本站第一位赞助商/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>2023 年年初,我在刷推的时候受 @xiqingongzi 启发,决定为本站进行招商。想法很简单:钱不钱的不… /p>/div>div classwp-block-post-date>time datetime2024-05-03T19:40:26+08:00>a hrefhttps://blog.meathill.com/tech/thanks-to-zeabur-for-being-the-first-sponsor-of-this-site.html>2024年5月3日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3010234 post type-post status-publish format-standard has-post-thumbnail hentry category-ai tag-ai tag-1381520 tag-1381521 tag-1253 tag-933>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/ai/video-tutorial-building-scraping-and-ai-tools-to-find-fulltime-remote-job.html target_self styleheight:max(15vw, 30vh)>img width1440 height1080 srchttps://blog.meathill.com/wp-content/uploads/2024/05/1.jpg classattachment-post-thumbnail size-post-thumbnail wp-post-image alt【视频教程】开发AI求职助手,一起走上全职远程之路(一) styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/05/1.jpg 1440w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1024x768.jpg 1024w, https://blog.meathill.com/wp-content/uploads/2024/05/1-320x240.jpg 320w, https://blog.meathill.com/wp-content/uploads/2024/05/1-768x576.jpg 768w sizes(max-width: 1440px) 100vw, 1440px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/ai/video-tutorial-building-scraping-and-ai-tools-to-find-fulltime-remote-job.html target_self >【视频教程】开发AI求职助手,一起走上全职远程之路(一)/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>新系列简介 开个新坑。其实类似的想法我去年就有了,但是一直没有做,除了懒之外,很大的问题就是我不会爬虫。而且在… /p>/div>div classwp-block-post-date>time datetime2024-05-01T21:18:40+08:00>a hrefhttps://blog.meathill.com/ai/video-tutorial-building-scraping-and-ai-tools-to-find-fulltime-remote-job.html>2024年5月1日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>/ul>nav classalignwide wp-block-query-pagination is-content-justification-space-between is-layout-flex wp-container-core-query-pagination-is-layout-1 wp-block-query-pagination-is-layout-flex aria-label分页>div classwp-block-query-pagination-numbers>span aria-currentpage classpage-numbers current>1/span>a classpage-numbers hrefhttps://blog.meathill.com/page/2>2/a>a classpage-numbers hrefhttps://blog.meathill.com/page/3>3/a>span classpage-numbers dots>…/span>a classpage-numbers hrefhttps://blog.meathill.com/page/75>75/a>/div>a hrefhttps://blog.meathill.com/page/2 classwp-block-query-pagination-next>Older Postsspan classwp-block-query-pagination-next-arrow is-arrow-arrow aria-hiddentrue>→/span>/a>/nav>/div>div styleheight:var(--wp--preset--spacing--60) aria-hiddentrue classwp-block-spacer>/div>div classwp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-1 wp-block-columns-is-layout-flex>div classwp-block-column is-layout-flow wp-block-column-is-layout-flow>div classwp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex>div classwp-block-button has-custom-font-size has-small-font-size>a classwp-block-button__link wp-element-button hrefhttps://blog.meathill.com/about>关于我/a>/div>/div>ul classwp-block-latest-posts__list has-dates wp-block-latest-posts has-small-font-size>li>a classwp-block-latest-posts__post-title hrefhttps://blog.meathill.com/tech/moved-my-nuxt3-sites-from-vercel-to-cloudflarenuxt.html>搬家记:从 Vercel 到 Cloudflare(Nuxt 项目x2)/a>time datetime2024-07-06T19:49:40+08:00 classwp-block-latest-posts__post-date>2024年7月6日/time>div classwp-block-latest-posts__post-excerpt>月底的时候,收到 Vercel 的邮件,提示我账号内有一些额度用量已经消耗 50%。我没在意,心想反正月底,马… a classwp-block-latest-posts__read-more hrefhttps://blog.meathill.com/tech/moved-my-nuxt3-sites-from-vercel-to-cloudflarenuxt.html relnoopener noreferrer>Read morespan classscreen-reader-text>: 搬家记:从 Vercel 到 Cloudflare(Nuxt 项目x2)/span>/a>/div>/li>li>a classwp-block-latest-posts__post-title hrefhttps://blog.meathill.com/web/practical-tutorial-integrate-speech-to-text-on-webpage-1-record-in-browser.html>【实用教程】在网页里集成语音输入:1. 在浏览器里完成录音/a>time datetime2024-06-22T16:07:22+08:00 classwp-block-latest-posts__post-date>2024年6月22日/time>div classwp-block-latest-posts__post-excerpt>继续写实用教程。接下来准备讲解一下如何在网页里集成语音识别,语音输入的功能。也就是俗称的 STT(Speech… a classwp-block-latest-posts__read-more hrefhttps://blog.meathill.com/web/practical-tutorial-integrate-speech-to-text-on-webpage-1-record-in-browser.html relnoopener noreferrer>Read morespan classscreen-reader-text>: 【实用教程】在网页里集成语音输入:1. 在浏览器里完成录音/span>/a>/div>/li>li>a classwp-block-latest-posts__post-title hrefhttps://blog.meathill.com/tech/fe/best-practices-for-mobile-web-height-adaption.html>移动网页高度自适应最佳实践/a>time datetime2024-06-16T00:00:51+08:00 classwp-block-latest-posts__post-date>2024年6月16日/time>div classwp-block-latest-posts__post-excerpt>移动 Web 开发就要在“螺蛳壳里做道场”。移动设备限于屏幕尺寸,不得已左支右绌,既要多呈现内容,又要保证功能… a classwp-block-latest-posts__read-more hrefhttps://blog.meathill.com/tech/fe/best-practices-for-mobile-web-height-adaption.html relnoopener noreferrer>Read morespan classscreen-reader-text>: 移动网页高度自适应最佳实践/span>/a>/div>/li>li>a classwp-block-latest-posts__post-title hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-4-ssr-and-useasyncdata.html>【视频教程】技术栈大升级:Vue3 到 Nuxt3(4)深入理解 SSR 和 `useAsyncData`/a>time datetime2024-06-10T21:37:12+08:00 classwp-block-latest-posts__post-date>2024年6月10日/time>div classwp-block-latest-posts__post-excerpt>2023 年,我个人最大的变化,是从 Vue3 SPA 应用向 Nuxt3 SSR 应用过渡,在预期可能存在 … a classwp-block-latest-posts__read-more hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-4-ssr-and-useasyncdata.html relnoopener noreferrer>Read morespan classscreen-reader-text>: 【视频教程】技术栈大升级:Vue3 到 Nuxt3(4)深入理解 SSR 和 `useAsyncData`/span>/a>/div>/li>li>a classwp-block-latest-posts__post-title hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-2-and-3-upgrading-experience.html>【视频教程】技术栈大升级:Vue3 到 Nuxt3(2-3)升级实战 – 基础知识,适配 SSR,页面路由/a>time datetime2024-06-02T20:50:14+08:00 classwp-block-latest-posts__post-date>2024年6月2日/time>div classwp-block-latest-posts__post-excerpt>2023 年,我个人最大的变化,是从 Vue3 SPA 应用向 Nuxt3 SSR 应用过渡,在预期可能存在 … a classwp-block-latest-posts__read-more hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-2-and-3-upgrading-experience.html relnoopener noreferrer>Read morespan classscreen-reader-text>: 【视频教程】技术栈大升级:Vue3 到 Nuxt3(2-3)升级实战 – 基础知识,适配 SSR,页面路由/span>/a>/div>/li>/ul>/div>div classwp-block-column is-layout-flow wp-block-column-is-layout-flow>hr classwp-block-separator has-alpha-channel-opacity/>div classwp-block-jetpack-calendly>/div>/div>/div>/main>footer classwp-block-template-part>div classwp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained> div classwp-block-group alignwide is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-4 wp-block-group-is-layout-flex stylepadding-top:var(--wp--preset--spacing--40)> form rolesearch methodget actionhttps://blog.meathill.com/ classwp-block-search__button-outside wp-block-search__text-button wp-block-search >label classwp-block-search__label screen-reader-text forwp-block-search__input-4 >搜索/label>div classwp-block-search__inside-wrapper >input classwp-block-search__input idwp-block-search__input-4 placeholder value typesearch names required />button aria-label搜索 classwp-block-search__button wp-element-button typesubmit >搜索/button>/div>/form>p classwp-block-site-title>a hrefhttps://blog.meathill.com target_self relhome aria-currentpage>山维空间/a>/p> p classhas-text-align-right> 自豪地采用 a hrefhttps://cn.wordpress.org relnofollow>WordPress/a> /p> /div> /div>/footer>/div>script async srchttps://www.googletagmanager.com/gtag/js?idG-6X03SBJR88>/script>script> // 微信打赏 (function () { if (!/\bmicromessenger\b/i.test(navigator.userAgent)) { return; } var container document.querySelector(body.single-post .entry-content); if (!container) { return; } var div document.createElement(div); div.className weixin-gathering; div.innerHTML hr>p>随手打赏,满身余香。您的支持将鼓励我继续创作!small>(长按二维码识别打赏)/small>/p>p>img src/wp-content/uploads/weixin-gathering.png alt微信打赏 width240 height240>/p>; var share container.getElementsByClassName(sharedaddy)0; container.insertBefore(div, share); }()); // GA window.dataLayer window.dataLayer || ; function gtag(){dataLayer.push(arguments);} gtag(js, new Date()); gtag(config, G-6X03SBJR88); // insert ADs const couplet document.createElement(div); couplet.classList.add(meathill-ad-couplet); couplet.innerHTML `a hrefhttps://zeabur.com/?referralCodemeathill target_blank relnoopener noreferrer>img altZeabur 一键部署服务 无需租用服务器 src/wp-content/uploads/ad/zeabur-120x600.webp width120 height600 />/a>a hrefhttps://zeabur.com/?referralCodemeathill target_blank relnoopener noreferrer>img altZeabur 一键部署服务 无需租用服务器 src/wp-content/uploads/ad/zeabur-120x600.webp width120 height600 />/a>`; document.body.appendChild(couplet); const inContent document.createElement(div); inContent.classList.add(meathill-ad-in-content); inContent.innerHTML `a hrefhttps://zeabur.com/?referralCodemeathill target_blank relnoopener noreferrer>img altZeabur 一键部署服务 无需租用服务器 src/wp-content/uploads/ad/zeabur-650x280.webp width650 height280 />/a>`; const ps document.querySelectorAll(.entry-content p); const p ps3 || psps.length - 1; if (p) { p.parentElement.insertBefore(inContent, p); }/script>style>.meathill-ad-couplet { position: fixed; top: 12.5rem; width: 100%; max-width: var(--wp--style--global--wide-size); margin-right: calc((100% - var(--wp--style--global--wide-size)) / 2); margin-left: calc((100% - var(--wp--style--global--wide-size)) / 2);}.meathill-ad-couplet > a { position: absolute; top: 0; display: block;}.meathill-ad-couplet img { width: 120px; height: 600px; display: block;}.meathill-ad-couplet > a:first-child { right: calc(100% + 2rem);}.meathill-ad-couplet > a:last-child { left: calc(100% + 2rem);}@media (max-width: 1440px) { .meathill-ad-couplet { display: none; }}.meathill-ad-in-content { margin-block-start: 1.5rem; display: flex; justify-content: center;}.meathill-ad-in-content a,.meathill-ad-in-content img { display: block;}.meathill-ad-in-content img { width: 100%; height: auto; max-width: 650px; aspect-ratio: 650 / 280;}/style>script idwp-block-template-skip-link-js-after> ( function() { var skipLinkTarget document.querySelector( main ), sibling, skipLinkTargetID, skipLink; // Early exit if a skip-link target cant be located. if ( ! skipLinkTarget ) { return; } /* * Get the site wrapper. * The skip-link will be injected in the beginning of it. */ sibling document.querySelector( .wp-site-blocks ); // Early exit if the root element was not found. if ( ! sibling ) { return; } // Get the skip-link targets ID, and generate one if it doesnt exist. skipLinkTargetID skipLinkTarget.id; if ( ! skipLinkTargetID ) { skipLinkTargetID wp--skip-link--target; skipLinkTarget.id skipLinkTargetID; } // Create the skip link. skipLink document.createElement( a ); skipLink.classList.add( skip-link, screen-reader-text ); skipLink.href # + skipLinkTargetID; skipLink.innerHTML 跳至内容; // Inject the skip link. sibling.parentElement.insertBefore( skipLink, sibling ); }() ); /script>script idmkaz-code-syntax-prism-js-js-extra>var prism_settings {pluginUrl:https:\/\/blog.meathill.com\/wp-content\/plugins\/code-syntax-block\/};/script>script srchttps://blog.meathill.com/wp-content/plugins/code-syntax-block/assets/prism/prism.js?ver1715218883 idmkaz-code-syntax-prism-js-js>/script>script srchttps://code.jquery.com/jquery-3.6.4.slim.min.js idjquery-js>/script>/body>/html>!-- Dynamic page generated in 2.808 seconds. -->!-- Cached page generated by WP-Super-Cache on 2024-07-11 18:38:58 -->!-- Compression gzip -->!-- super cache -->
Port 443
HTTP/1.1 200 OKServer: nginx/1.18.0 (Ubuntu)Content-Type: text/html; charsetUTF-8Vary: Accept-EncodingVary: Accept-Encoding, CookieLast-Modified: Thu, 11 Jul 2024 10:38:58 GMTCache-Control: must-revalidate, max-age3Content-Length: 93296Connection: keep-aliveDate: Wed, 17 Jul 2024 13:26:54 GMTEO-LOG-UUID: 5804674969149519597EO-Cache-Status: MISS !DOCTYPE html>html langzh-CN>head> meta charsetUTF-8 /> meta nameviewport contentwidthdevice-width, initial-scale1 />meta namerobots contentmax-image-preview:large />title>山维空间 – 肉山的生活记录和技术分享/title>link reldns-prefetch href//code.jquery.com />link relalternate typeapplication/rss+xml title山维空间 » Feed hrefhttps://blog.meathill.com/feed />link relalternate typeapplication/rss+xml title山维空间 » 评论 Feed hrefhttps://blog.meathill.com/comments/feed />style idwp-block-site-title-inline-css>:root :where(.wp-block-site-title a){color:inherit}/style>style idwp-block-navigation-link-inline-css>.wp-block-navigation .wp-block-navigation-item__label{overflow-wrap:break-word}.wp-block-navigation .wp-block-navigation-item__description{display:none}.link-ui-tools{border-top:1px solid #f0f0f0;padding:8px}.link-ui-block-inserter{padding-top:8px}.link-ui-block-inserter__back{margin-left:8px;text-transform:uppercase}/style>style idwp-block-search-inline-css>.wp-block-search__button{margin-left:10px;word-break:normal}.wp-block-search__button.has-icon{line-height:0}.wp-block-search__button svg{fill:currentColor;height:1.25em;min-height:24px;min-width:24px;vertical-align:text-bottom;width:1.25em}:where(.wp-block-search__button){border:1px solid #ccc;padding:6px 10px}.wp-block-search__inside-wrapper{display:flex;flex:auto;flex-wrap:nowrap;max-width:100%}.wp-block-search__label{width:100%}.wp-block-search__input{appearance:none;border:1px solid #949494;flex-grow:1;margin-left:0;margin-right:0;min-width:3rem;padding:8px;text-decoration:unset!important}.wp-block-search.wp-block-search__button-only .wp-block-search__button{flex-shrink:0;margin-left:0;max-width:100%}.wp-block-search.wp-block-search__button-only .wp-block-search__buttonaria-expandedtrue{max-width:calc(100% - 100px)}.wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper{min-width:0!important;transition-property:width}.wp-block-search.wp-block-search__button-only .wp-block-search__input{flex-basis:100%;transition-duration:.3s}.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden,.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper{overflow:hidden}.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__input{border-left-width:0!important;border-right-width:0!important;flex-basis:0;flex-grow:0;margin:0;min-width:0!important;padding-left:0!important;padding-right:0!important;width:0!important}:where(.wp-block-search__input){font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-transform:inherit}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper){border:1px solid #949494;box-sizing:border-box;padding:4px}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input{border:none;border-radius:0;padding:0 4px}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input:focus{outline:none}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) :where(.wp-block-search__button){padding:4px 8px}.wp-block-search.aligncenter .wp-block-search__inside-wrapper{margin:auto}.wp-blockdata-alignright .wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper{float:right}/style>link relstylesheet idwp-block-navigation-css hrefhttps://blog.meathill.com/wp-content/plugins/gutenberg/build/block-library/blocks/navigation/style.css?ver18.7.1 mediaall />style idwp-block-group-inline-css>.wp-block-group{box-sizing:border-box}:where(.wp-block-group.wp-block-group-is-layout-constrained){position:relative}/style>style idwp-block-heading-inline-css>h1.has-background,h2.has-background,h3.has-background,h4.has-background,h5.has-background,h6.has-background{padding:1.25em 2.375em}h1.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h1.has-text-align-rightstyle*writing-mode:where(style*vertical-rl),h2.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h2.has-text-align-rightstyle*writing-mode:where(style*vertical-rl),h3.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h3.has-text-align-rightstyle*writing-mode:where(style*vertical-rl),h4.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h4.has-text-align-rightstyle*writing-mode:where(style*vertical-rl),h5.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h5.has-text-align-rightstyle*writing-mode:where(style*vertical-rl),h6.has-text-align-leftstyle*writing-mode:where(style*vertical-lr),h6.has-text-align-rightstyle*writing-mode:where(style*vertical-rl){rotate:180deg}/style>style idwp-block-post-featured-image-inline-css>.wp-block-post-featured-image{margin-left:0;margin-right:0}.wp-block-post-featured-image a{display:block;height:100%}.wp-block-post-featured-image img{box-sizing:border-box;height:auto;max-width:100%;vertical-align:bottom;width:100%}.wp-block-post-featured-image.alignfull img,.wp-block-post-featured-image.alignwide img{width:100%}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim{background-color:#000;inset:0;position:absolute}.wp-block-post-featured-image{position:relative}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-gradient{background-color:initial}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-0{opacity:0}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-10{opacity:.1}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-20{opacity:.2}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-30{opacity:.3}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-40{opacity:.4}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-50{opacity:.5}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-60{opacity:.6}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-70{opacity:.7}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-80{opacity:.8}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-90{opacity:.9}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-100{opacity:1}.wp-block-post-featured-image:where(.alignleft,.alignright){width:100%}/style>style idwp-block-post-title-inline-css>.wp-block-post-title{box-sizing:border-box;word-break:break-word}.wp-block-post-title a{display:inline-block}/style>style idwp-block-paragraph-inline-css>.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-leftstyle*writing-mode:vertical-lr,p.has-text-align-rightstyle*writing-mode:vertical-rl{rotate:180deg}/style>style idwp-block-quote-inline-css>.wp-block-quote{box-sizing:border-box;overflow-wrap:break-word}.wp-block-quote.is-large:where(:not(.is-style-plain)),.wp-block-quote.is-style-large:where(:not(.is-style-plain)){margin-bottom:1em;padding:0 1em}.wp-block-quote.is-large:where(:not(.is-style-plain)) p,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) p{font-size:1.5em;font-style:italic;line-height:1.6}.wp-block-quote.is-large:where(:not(.is-style-plain)) cite,.wp-block-quote.is-large:where(:not(.is-style-plain)) footer,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) cite,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) footer{font-size:1.125em;text-align:right}.wp-block-quote>cite{display:block}/style>style idwp-block-post-excerpt-inline-css>:where(.wp-block-post-excerpt){margin-bottom:var(--wp--style--block-gap);margin-top:var(--wp--style--block-gap)}.wp-block-post-excerpt__excerpt{margin-bottom:0;margin-top:0}.wp-block-post-excerpt__more-text{margin-bottom:0;margin-top:var(--wp--style--block-gap)}.wp-block-post-excerpt__more-link{display:inline-block}/style>style idwp-block-post-date-inline-css>.wp-block-post-date{box-sizing:border-box}/style>style idwp-block-spacer-inline-css>.wp-block-spacer{clear:both}/style>style idwp-block-post-template-inline-css>.wp-block-post-template{list-style:none;margin-bottom:0;margin-top:0;max-width:100%;padding:0}.wp-block-post-template.is-flex-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:1.25em}.wp-block-post-template.is-flex-container>li{margin:0;width:100%}@media (min-width:600px){.wp-block-post-template.is-flex-container.is-flex-container.columns-2>li{width:calc(50% - .625em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-3>li{width:calc(33.33333% - .83333em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-4>li{width:calc(25% - .9375em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-5>li{width:calc(20% - 1em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-6>li{width:calc(16.66667% - 1.04167em)}}@media (max-width:600px){.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid{grid-template-columns:1fr}}.wp-block-post-template-is-layout-constrained>li>.alignright,.wp-block-post-template-is-layout-flow>li>.alignright{float:right;margin-inline-end:0;margin-inline-start:2em}.wp-block-post-template-is-layout-constrained>li>.alignleft,.wp-block-post-template-is-layout-flow>li>.alignleft{float:left;margin-inline-end:2em;margin-inline-start:0}.wp-block-post-template-is-layout-constrained>li>.aligncenter,.wp-block-post-template-is-layout-flow>li>.aligncenter{margin-inline-end:auto;margin-inline-start:auto}/style>style idwp-block-query-pagination-inline-css>.wp-block-query-pagination>.wp-block-query-pagination-next,.wp-block-query-pagination>.wp-block-query-pagination-numbers,.wp-block-query-pagination>.wp-block-query-pagination-previous{margin-bottom:.5em;margin-right:.5em}.wp-block-query-pagination>.wp-block-query-pagination-next:last-child,.wp-block-query-pagination>.wp-block-query-pagination-numbers:last-child,.wp-block-query-pagination>.wp-block-query-pagination-previous:last-child{margin-right:0}.wp-block-query-pagination.is-content-justification-space-between>.wp-block-query-pagination-next:last-of-type{margin-inline-start:auto}.wp-block-query-pagination.is-content-justification-space-between>.wp-block-query-pagination-previous:first-child{margin-inline-end:auto}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow{display:inline-block;margin-right:1ch}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-query-pagination .wp-block-query-pagination-next-arrow{display:inline-block;margin-left:1ch}.wp-block-query-pagination .wp-block-query-pagination-next-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-query-pagination.aligncenter{justify-content:center}/style>style idwp-block-button-inline-css>.wp-block-button__link{box-sizing:border-box;cursor:pointer;display:inline-block;text-align:center;word-break:break-word}.wp-block-button__link.aligncenter{text-align:center}.wp-block-button__link.alignright{text-align:right}:where(.wp-block-button__link){border-radius:9999px;box-shadow:none;padding:calc(.667em + 2px) calc(1.333em + 2px);text-decoration:none}.wp-block-buttonstyle*text-decoration .wp-block-button__link{text-decoration:inherit}.wp-block-buttons>.wp-block-button.has-custom-width{max-width:none}.wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link{width:100%}.wp-block-buttons>.wp-block-button.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons>.wp-block-button.wp-block-button__width-25{width:calc(25% - var(--wp--style--block-gap, .5em)*.75)}.wp-block-buttons>.wp-block-button.wp-block-button__width-50{width:calc(50% - var(--wp--style--block-gap, .5em)*.5)}.wp-block-buttons>.wp-block-button.wp-block-button__width-75{width:calc(75% - var(--wp--style--block-gap, .5em)*.25)}.wp-block-buttons>.wp-block-button.wp-block-button__width-100{flex-basis:100%;width:100%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-25{width:25%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-50{width:50%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-75{width:75%}.wp-block-button.is-style-squared,.wp-block-button__link.wp-block-button.is-style-squared{border-radius:0}.wp-block-button.no-border-radius,.wp-block-button__link.no-border-radius{border-radius:0!important}:root :where(.wp-block-button .wp-block-button__link.is-style-outline),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link){border:2px solid;padding:.667em 1.333em}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color)){color:currentColor}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-background)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background)){background-color:initial;background-image:none}/style>style idwp-block-buttons-inline-css>.wp-block-buttons.is-vertical{flex-direction:column}.wp-block-buttons.is-vertical>.wp-block-button:last-child{margin-bottom:0}.wp-block-buttons>.wp-block-button{display:inline-block;margin:0}.wp-block-buttons.is-content-justification-left{justify-content:flex-start}.wp-block-buttons.is-content-justification-left.is-vertical{align-items:flex-start}.wp-block-buttons.is-content-justification-center{justify-content:center}.wp-block-buttons.is-content-justification-center.is-vertical{align-items:center}.wp-block-buttons.is-content-justification-right{justify-content:flex-end}.wp-block-buttons.is-content-justification-right.is-vertical{align-items:flex-end}.wp-block-buttons.is-content-justification-space-between{justify-content:space-between}.wp-block-buttons.aligncenter{text-align:center}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block-button.aligncenter{margin-left:auto;margin-right:auto;width:100%}.wp-block-buttonsstyle*text-decoration .wp-block-button,.wp-block-buttonsstyle*text-decoration .wp-block-button__link{text-decoration:inherit}.wp-block-buttons.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-button.aligncenter{text-align:center}/style>style idwp-block-latest-posts-inline-css>.wp-block-latest-posts{box-sizing:border-box}.wp-block-latest-posts.alignleft{margin-right:2em}.wp-block-latest-posts.alignright{margin-left:2em}.wp-block-latest-posts.wp-block-latest-posts__list{list-style:none}.wp-block-latest-posts.wp-block-latest-posts__list li{clear:both;overflow-wrap:break-word}.wp-block-latest-posts.is-grid{display:flex;flex-wrap:wrap}.wp-block-latest-posts.is-grid li{margin:0 1.25em 1.25em 0;width:100%}@media (min-width:600px){.wp-block-latest-posts.columns-2 li{width:calc(50% - .625em)}.wp-block-latest-posts.columns-2 li:nth-child(2n){margin-right:0}.wp-block-latest-posts.columns-3 li{width:calc(33.33333% - .83333em)}.wp-block-latest-posts.columns-3 li:nth-child(3n){margin-right:0}.wp-block-latest-posts.columns-4 li{width:calc(25% - .9375em)}.wp-block-latest-posts.columns-4 li:nth-child(4n){margin-right:0}.wp-block-latest-posts.columns-5 li{width:calc(20% - 1em)}.wp-block-latest-posts.columns-5 li:nth-child(5n){margin-right:0}.wp-block-latest-posts.columns-6 li{width:calc(16.66667% - 1.04167em)}.wp-block-latest-posts.columns-6 li:nth-child(6n){margin-right:0}}:root :where(.wp-block-latest-posts.is-grid){padding:0}:root :where(.wp-block-latest-posts.wp-block-latest-posts__list){padding-left:0}.wp-block-latest-posts__post-author,.wp-block-latest-posts__post-date{display:block;font-size:.8125em}.wp-block-latest-posts__post-excerpt{margin-bottom:1em;margin-top:.5em}.wp-block-latest-posts__featured-image a{display:inline-block}.wp-block-latest-posts__featured-image img{height:auto;max-width:100%;width:auto}.wp-block-latest-posts__featured-image.alignleft{float:left;margin-right:1em}.wp-block-latest-posts__featured-image.alignright{float:right;margin-left:1em}.wp-block-latest-posts__featured-image.aligncenter{margin-bottom:1em;text-align:center}/style>style idwp-block-separator-inline-css>@charset UTF-8;.wp-block-separator{border:none;border-top:2px solid}:root :where(.wp-block-separator.is-style-dots){height:auto;line-height:1;text-align:center}:root :where(.wp-block-separator.is-style-dots):before{color:currentColor;content:···;font-family:serif;font-size:1.5em;letter-spacing:2em;padding-left:2em}.wp-block-separator.is-style-dots{background:none!important;border:none!important}/style>style idwp-block-columns-inline-css>.wp-block-columns{align-items:normal!important;box-sizing:border-box;display:flex;flex-wrap:wrap!important}@media (min-width:782px){.wp-block-columns{flex-wrap:nowrap!important}}.wp-block-columns.are-vertically-aligned-top{align-items:flex-start}.wp-block-columns.are-vertically-aligned-center{align-items:center}.wp-block-columns.are-vertically-aligned-bottom{align-items:flex-end}@media (max-width:781px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:100%!important}}@media (min-width:782px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-columnstyle*flex-basis{flex-grow:0}}.wp-block-columns.is-not-stacked-on-mobile{flex-wrap:nowrap!important}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-columnstyle*flex-basis{flex-grow:0}:where(.wp-block-columns){margin-bottom:1.75em}:where(.wp-block-columns.has-background){padding:1.25em 2.375em}.wp-block-column{flex-grow:1;min-width:0;overflow-wrap:break-word;word-break:break-word}.wp-block-column.is-vertically-aligned-top{align-self:flex-start}.wp-block-column.is-vertically-aligned-center{align-self:center}.wp-block-column.is-vertically-aligned-bottom{align-self:flex-end}.wp-block-column.is-vertically-aligned-stretch{align-self:stretch}.wp-block-column.is-vertically-aligned-bottom,.wp-block-column.is-vertically-aligned-center,.wp-block-column.is-vertically-aligned-top{width:100%}/style>link relstylesheet idwp-block-library-css hrefhttps://blog.meathill.com/wp-content/plugins/gutenberg/build/block-library/common.css?ver18.7.1 mediaall />style idwp-block-template-skip-link-inline-css> .skip-link.screen-reader-text { border: 0; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; } .skip-link.screen-reader-text:focus { background-color: #eee; clip: auto !important; clip-path: none; color: #444; display: block; font-size: 1em; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; }/style>link relstylesheet idmkaz-code-syntax-prism-css-css hrefhttps://blog.meathill.com/wp-content/plugins/code-syntax-block/assets/prism-a11y-dark.css?ver1715218883 mediaall />style idglobal-styles-inline-css>:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--base: #ffffff;--wp--preset--color--contrast: #000000;--wp--preset--color--primary: #9DFF20;--wp--preset--color--secondary: #345C00;--wp--preset--color--tertiary: #F6F6F6;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.227), 1rem);--wp--preset--font-size--medium: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.227), 1.125rem);--wp--preset--font-size--large: clamp(1.75rem, 1.75rem + ((1vw - 0.2rem) * 0.227), 1.875rem);--wp--preset--font-size--x-large: 2.25rem;--wp--preset--font-size--xx-large: clamp(6.1rem, 6.1rem + ((1vw - 0.2rem) * 7.091), 10rem);--wp--preset--font-family--dm-sans: DM Sans, sans-serif;--wp--preset--font-family--ibm-plex-mono: IBM Plex Mono, monospace;--wp--preset--font-family--inter: Inter, sans-serif;--wp--preset--font-family--system-font: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;--wp--preset--font-family--source-serif-pro: Source Serif Pro, serif;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: clamp(1.5rem, 5vw, 2rem);--wp--preset--spacing--40: clamp(1.8rem, 1.8rem + ((1vw - 0.48rem) * 2.885), 3rem);--wp--preset--spacing--50: clamp(2.5rem, 8vw, 4.5rem);--wp--preset--spacing--60: clamp(3.75rem, 10vw, 7rem);--wp--preset--spacing--70: clamp(5rem, 5.25rem + ((1vw - 0.48rem) * 9.096), 8rem);--wp--preset--spacing--80: clamp(7rem, 14vw, 11rem);--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:root { --wp--style--global--content-size: 650px;--wp--style--global--wide-size: 1200px; }:where(body) { margin: 0; }.wp-site-blocks { padding-top: var(--wp--style--root--padding-top); padding-bottom: var(--wp--style--root--padding-bottom); }.has-global-padding { padding-right: var(--wp--style--root--padding-right); padding-left: var(--wp--style--root--padding-left); }.has-global-padding > .alignfull { margin-right: calc(var(--wp--style--root--padding-right) * -1); margin-left: calc(var(--wp--style--root--padding-left) * -1); }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull, .alignwide)) { padding-right: 0; padding-left: 0; }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull, .alignwide)) > .alignfull { margin-left: 0; margin-right: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.wp-site-blocks) > * { margin-block-start: 1.5rem; margin-block-end: 0; }:where(.wp-site-blocks) > :first-child { margin-block-start: 0; }:where(.wp-site-blocks) > :last-child { margin-block-end: 0; }:root { --wp--style--block-gap: 1.5rem; }.is-layout-flow > :first-child{margin-block-start: 0;}.is-layout-flow > :last-child{margin-block-end: 0;}.is-layout-flow > *{margin-block-start: 1.5rem;margin-block-end: 0;}.is-layout-constrained > :first-child{margin-block-start: 0;}.is-layout-constrained > :last-child{margin-block-end: 0;}.is-layout-constrained > *{margin-block-start: 1.5rem;margin-block-end: 0;}.is-layout-flex {gap: 1.5rem;}.is-layout-grid {gap: 1.5rem;}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:root :where(body){background-color: var(--wp--preset--color--base);color: var(--wp--preset--color--contrast);font-family: var(--wp--preset--font-family--system-font);font-size: var(--wp--preset--font-size--medium);line-height: 1.6;--wp--style--root--padding-top: var(--wp--preset--spacing--40);--wp--style--root--padding-right: var(--wp--preset--spacing--30);--wp--style--root--padding-bottom: var(--wp--preset--spacing--40);--wp--style--root--padding-left: var(--wp--preset--spacing--30);}:root :where(a:where(:not(.wp-element-button))){color: var(--wp--preset--color--contrast);text-decoration: underline;}:root :where(a:where(:not(.wp-element-button)):hover){text-decoration: none;}:root :where(a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}:root :where(a:where(:not(.wp-element-button)):active){color: var(--wp--preset--color--secondary);text-decoration: none;}:root :where(h1, h2, h3, h4, h5, h6){font-weight: 400;line-height: 1.4;}:root :where(h1){font-size: clamp(2.032rem, 2.032rem + ((1vw - 0.2rem) * 2.896), 3.625rem);line-height: 1.2;}:root :where(h2){font-size: clamp(2.625rem, calc(2.625rem + ((1vw - 0.48rem) * 8.4135)), 3.25rem);line-height: 1.2;}:root :where(h3){font-size: var(--wp--preset--font-size--x-large);}:root :where(h4){font-size: var(--wp--preset--font-size--large);}:root :where(h5){font-size: var(--wp--preset--font-size--medium);font-weight: 700;text-transform: uppercase;}:root :where(h6){font-size: var(--wp--preset--font-size--medium);text-transform: uppercase;}:root :where(.wp-element-button, .wp-block-button__link){background-color: var(--wp--preset--color--primary);border-radius: 0;border-width: 0;color: var(--wp--preset--color--contrast);font-family: inherit;font-size: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;}:root :where(.wp-element-button:visited, .wp-block-button__link:visited){color: var(--wp--preset--color--contrast);}:root :where(.wp-element-button:hover, .wp-block-button__link:hover){background-color: var(--wp--preset--color--contrast);color: var(--wp--preset--color--base);}:root :where(.wp-element-button:focus, .wp-block-button__link:focus){background-color: var(--wp--preset--color--contrast);color: var(--wp--preset--color--base);}:root :where(.wp-element-button:active, .wp-block-button__link:active){background-color: var(--wp--preset--color--secondary);color: var(--wp--preset--color--base);}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-base-color{color: var(--wp--preset--color--base) !important;}.has-contrast-color{color: var(--wp--preset--color--contrast) !important;}.has-primary-color{color: var(--wp--preset--color--primary) !important;}.has-secondary-color{color: var(--wp--preset--color--secondary) !important;}.has-tertiary-color{color: var(--wp--preset--color--tertiary) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-base-background-color{background-color: var(--wp--preset--color--base) !important;}.has-contrast-background-color{background-color: var(--wp--preset--color--contrast) !important;}.has-primary-background-color{background-color: var(--wp--preset--color--primary) !important;}.has-secondary-background-color{background-color: var(--wp--preset--color--secondary) !important;}.has-tertiary-background-color{background-color: var(--wp--preset--color--tertiary) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-base-border-color{border-color: var(--wp--preset--color--base) !important;}.has-contrast-border-color{border-color: var(--wp--preset--color--contrast) !important;}.has-primary-border-color{border-color: var(--wp--preset--color--primary) !important;}.has-secondary-border-color{border-color: var(--wp--preset--color--secondary) !important;}.has-tertiary-border-color{border-color: var(--wp--preset--color--tertiary) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-xx-large-font-size{font-size: var(--wp--preset--font-size--xx-large) !important;}.has-dm-sans-font-family{font-family: var(--wp--preset--font-family--dm-sans) !important;}.has-ibm-plex-mono-font-family{font-family: var(--wp--preset--font-family--ibm-plex-mono) !important;}.has-inter-font-family{font-family: var(--wp--preset--font-family--inter) !important;}.has-system-font-font-family{font-family: var(--wp--preset--font-family--system-font) !important;}.has-source-serif-pro-font-family{font-family: var(--wp--preset--font-family--source-serif-pro) !important;}.wp-block-table-of-contents { border: 1px solid #ddd; position: relative;}.wp-block-table-of-contents::after { content: TOC; position: absolute; top: .5rem; right: .5rem; background: #ccc; line-height: 2; padding: 0 1em; font-size: 12px;}iframe { display: block;}.max-h-36 { max-height: 9rem;}.max-h-36 img { height: 100%;}:root :where(.wp-block-navigation){font-size: var(--wp--preset--font-size--small);}:root :where(.wp-block-navigation a:where(:not(.wp-element-button))){text-decoration: none;}:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):hover){text-decoration: underline;}:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):active){text-decoration: none;}:root :where(.wp-block-post-excerpt){font-size: var(--wp--preset--font-size--medium);}:root :where(.wp-block-post-date){font-size: var(--wp--preset--font-size--small);font-weight: 400;}:root :where(.wp-block-post-date a:where(:not(.wp-element-button))){text-decoration: none;}:root :where(.wp-block-post-date a:where(:not(.wp-element-button)):hover){text-decoration: underline;}:root :where(.wp-block-post-title){font-weight: 400;margin-top: 1.25rem;margin-bottom: 1.25rem;}:root :where(.wp-block-post-title a:where(:not(.wp-element-button))){text-decoration: none;}:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):hover){text-decoration: underline;}:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):active){color: var(--wp--preset--color--secondary);text-decoration: none;}:root :where(.wp-block-query-pagination){font-size: var(--wp--preset--font-size--small);font-weight: 400;}:root :where(.wp-block-query-pagination a:where(:not(.wp-element-button))){text-decoration: none;}:root :where(.wp-block-query-pagination a:where(:not(.wp-element-button)):hover){text-decoration: underline;}:root :where(.wp-block-quote){border-left-color: inherit;border-left-width: 1px;border-left-style: solid;padding-right: var(--wp--preset--spacing--30);padding-left: var(--wp--preset--spacing--30);}:root :where(.wp-block-quote cite){font-size: var(--wp--preset--font-size--small);font-style: normal;}:root :where(.wp-block-site-title){font-size: var(--wp--preset--font-size--medium);font-weight: normal;line-height: 1.4;}:root :where(.wp-block-site-title a:where(:not(.wp-element-button))){text-decoration: none;}:root :where(.wp-block-site-title a:where(:not(.wp-element-button)):hover){text-decoration: underline;}:root :where(.wp-block-site-title a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}:root :where(.wp-block-site-title a:where(:not(.wp-element-button)):active){color: var(--wp--preset--color--secondary);text-decoration: none;}:root :where(.wp-block-separator){}:root :where(.wp-block-separator:not(.is-style-wide):not(.is-style-dots):not(.alignwide):not(.alignfull)){width: 100px}/style>style idcore-block-supports-inline-css>.wp-container-core-navigation-is-layout-1{justify-content:flex-end;}.wp-container-core-group-is-layout-1{justify-content:space-between;}.wp-container-core-query-pagination-is-layout-1{justify-content:space-between;}.wp-container-core-columns-is-layout-1{flex-wrap:nowrap;}.wp-container-core-group-is-layout-4{justify-content:space-between;}/style>link relhttps://api.w.org/ hrefhttps://blog.meathill.com/wp-json/ />link relEditURI typeapplication/rsd+xml titleRSD hrefhttps://blog.meathill.com/xmlrpc.php?rsd />meta namegenerator contentWordPress 6.5.5 />script idwp-load-polyfill-importmap>( HTMLScriptElement.supports && HTMLScriptElement.supports(importmap) ) || document.write( script srchttps://blog.meathill.com/wp-includes/js/dist/vendor/wp-polyfill-importmap.min.js?ver1.8.2>/scr + ipt> );/script>script typeimportmap idwp-importmap>{imports:{@wordpress\/interactivity:https:\/\/blog.meathill.com\/wp-content\/plugins\/gutenberg\/build\/interactivity\/index.min.js?ver18.7.1}}/script>script typemodule srchttps://blog.meathill.com/wp-content/plugins/gutenberg/build/interactivity/navigation.min.js?ver18.7.1 id@wordpress/block-library/navigation-js-module>/script>link relmodulepreload hrefhttps://blog.meathill.com/wp-content/plugins/gutenberg/build/interactivity/index.min.js?ver18.7.1 id@wordpress/interactivity-js-modulepreload>style idwp-fonts-local>@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Regular.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:DM Sans;font-style:italic;font-weight:400;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Regular-Italic.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Bold.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:DM Sans;font-style:italic;font-weight:700;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Bold-Italic.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:300;font-display:block;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Light.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:block;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Regular.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:IBM Plex Mono;font-style:italic;font-weight:400;font-display:block;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Italic.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:block;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Bold.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:Inter;font-style:normal;font-weight:200 900;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/inter/Inter-VariableFont_slnt,wght.ttf) format(truetype);font-stretch:normal;}@font-face{font-family:Source Serif Pro;font-style:normal;font-weight:200 900;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/source-serif-pro/SourceSerif4Variable-Roman.ttf.woff2) format(woff2);font-stretch:normal;}@font-face{font-family:Source Serif Pro;font-style:italic;font-weight:200 900;font-display:fallback;src:url(https://blog.meathill.com/wp-content/themes/twentytwentythree/assets/fonts/source-serif-pro/SourceSerif4Variable-Italic.ttf.woff2) format(woff2);font-stretch:normal;}/style>link relicon hrefhttps://blog.meathill.com/wp-content/uploads/2014/12/meathill-5493c7abv1_site_icon-32x32.png sizes32x32 />link relicon hrefhttps://blog.meathill.com/wp-content/uploads/2014/12/meathill-5493c7abv1_site_icon-256x256.png sizes192x192 />link relapple-touch-icon hrefhttps://blog.meathill.com/wp-content/uploads/2014/12/meathill-5493c7abv1_site_icon-256x256.png />meta namemsapplication-TileImage contenthttps://blog.meathill.com/wp-content/uploads/2014/12/meathill-5493c7abv1_site_icon-512x510.png />/head>body classhome blog wp-embed-responsive>div classwp-site-blocks>header classwp-block-template-part>div classwp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained> div classwp-block-group alignwide is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-1 wp-block-group-is-layout-flex stylepadding-bottom:var(--wp--preset--spacing--40)> p classwp-block-site-title>a hrefhttps://blog.meathill.com target_self relhome aria-currentpage>山维空间/a>/p> nav classis-responsive items-justified-right wp-block-navigation is-content-justification-right is-layout-flex wp-container-core-navigation-is-layout-1 wp-block-navigation-is-layout-flex aria-label data-wp-interactivecore/navigation data-wp-context{overlayOpenedBy:{click:false,hover:false,focus:false},type:overlay,roleAttribute:,ariaLabel:\u83dc\u5355}>button aria-haspopupdialog aria-label打开菜单 classwp-block-navigation__responsive-container-open data-wp-on-async--clickactions.openMenuOnClick data-wp-on--keydownactions.handleMenuKeydown >svg width24 height24 xmlnshttp://www.w3.org/2000/svg viewBox0 0 24 24 aria-hiddentrue focusablefalse>rect x4 y7.5 width16 height1.5 />rect x4 y15 width16 height1.5 />/svg>/button> div classwp-block-navigation__responsive-container idmodal-2 data-wp-class--has-modal-openstate.isMenuOpen data-wp-class--is-menu-openstate.isMenuOpen data-wp-watchcallbacks.initMenu data-wp-on--keydownactions.handleMenuKeydown data-wp-on-async--focusoutactions.handleMenuFocusout tabindex-1 > div classwp-block-navigation__responsive-close tabindex-1> div classwp-block-navigation__responsive-dialog data-wp-bind--aria-modalstate.ariaModal data-wp-bind--aria-labelstate.ariaLabel data-wp-bind--rolestate.roleAttribute > button aria-label关闭菜单 classwp-block-navigation__responsive-container-close data-wp-on-async--clickactions.closeMenuOnClick >svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 24 24 width24 height24 aria-hiddentrue focusablefalse>path dM13 11.8l6.1-6.3-1-1-6.1 6.2-6.1-6.2-1 1 6.1 6.3-6.5 6.7 1 1 6.5-6.6 6.5 6.6 1-1z>/path>/svg>/button> div classwp-block-navigation__responsive-container-content data-wp-watchcallbacks.focusFirstElement idmodal-2-content> ul classwp-block-navigation__container is-responsive items-justified-right wp-block-navigation>li classwp-block-navigation-item current-menu-item wp-block-home-link>a classwp-block-home-link__content wp-block-navigation-item__content hrefhttps://blog.meathill.com relhome aria-currentpage>首页/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content href/about>span classwp-block-navigation-item__label>关于我/span>/a>/li>li data-wp-context{ "submenuOpenedBy": { "click": false, "hover": false, "focus": false }, "type": "submenu" } data-wp-interactivecore/navigation data-wp-on--focusoutactions.handleMenuFocusout data-wp-on--keydownactions.handleMenuKeydown data-wp-on-async--mouseenteractions.openMenuOnHover data-wp-on-async--mouseleaveactions.closeMenuOnHover data-wp-watchcallbacks.initMenu tabindex-1 class wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu>a classwp-block-navigation-item__content href/tech>技术分享/a>button data-wp-bind--aria-expandedstate.isMenuOpen data-wp-on-async--clickactions.toggleMenuOnClick aria-label技术分享 子菜单 classwp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle >svg xmlnshttp://www.w3.org/2000/svg width12 height12 viewBox0 0 12 12 fillnone aria-hiddentrue focusablefalse>path dM1.50002 4L6.00002 8L10.5 4 stroke-width1.5>/path>/svg>/button>ul data-wp-on-async--focusactions.openMenuOnFocus classwp-block-navigation__submenu-container wp-block-navigation-submenu>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content href/category/js>span classwp-block-navigation-item__label>JavaScript/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content href/category/ai>span classwp-block-navigation-item__label>AI/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://meathill.com/gitbook-design-patterns-in-jquery/>span classwp-block-navigation-item__label>从 jQuery 里学习设计模式/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://meathill.gitbooks.io/javascript-async-tutorial/content/>span classwp-block-navigation-item__label>JavaScript 异步开发全攻略/span>/a>/li>/ul>/li>li data-wp-context{ "submenuOpenedBy": { "click": false, "hover": false, "focus": false }, "type": "submenu" } data-wp-interactivecore/navigation data-wp-on--focusoutactions.handleMenuFocusout data-wp-on--keydownactions.handleMenuKeydown data-wp-on-async--mouseenteractions.openMenuOnHover data-wp-on-async--mouseleaveactions.closeMenuOnHover data-wp-watchcallbacks.initMenu tabindex-1 class wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu>a classwp-block-navigation-item__content hrefhttp://%E4%BD%9C%E5%93%81%E9%9B%86>作品集/a>button data-wp-bind--aria-expandedstate.isMenuOpen data-wp-on-async--clickactions.toggleMenuOnClick aria-label作品集 子菜单 classwp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle >svg xmlnshttp://www.w3.org/2000/svg width12 height12 viewBox0 0 12 12 fillnone aria-hiddentrue focusablefalse>path dM1.50002 4L6.00002 8L10.5 4 stroke-width1.5>/path>/svg>/button>ul data-wp-on-async--focusactions.openMenuOnFocus classwp-block-navigation__submenu-container wp-block-navigation-submenu>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://space.bilibili.com/7409098>span classwp-block-navigation-item__label>B 站视频/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://www.youtube.com/channel/UCBeD-XqErDK4tKy5FtZj8vg>span classwp-block-navigation-item__label>油管频道/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://github.com/meathill>span classwp-block-navigation-item__label>GitHub/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://baifo.life>span classwp-block-navigation-item__label>拜拜-网上拜佛,在线烧香/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://SoulScript.io>span classwp-block-navigation-item__label>SoulScript/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://mywordle.org>span classwp-block-navigation-item__label>Wordle 游戏/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://minesweeper.meathill.com>span classwp-block-navigation-item__label>扫雷游戏/span>/a>/li>/ul>/li>li data-wp-context{ "submenuOpenedBy": { "click": false, "hover": false, "focus": false }, "type": "submenu" } data-wp-interactivecore/navigation data-wp-on--focusoutactions.handleMenuFocusout data-wp-on--keydownactions.handleMenuKeydown data-wp-on-async--mouseenteractions.openMenuOnHover data-wp-on-async--mouseleaveactions.closeMenuOnHover data-wp-watchcallbacks.initMenu tabindex-1 class wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu>a classwp-block-navigation-item__content hrefhttp://%E5%90%84%E7%A7%8D%E4%BB%A3%E7%90%86>各种代理/a>button data-wp-bind--aria-expandedstate.isMenuOpen data-wp-on-async--clickactions.toggleMenuOnClick aria-label各种代理 子菜单 classwp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle >svg xmlnshttp://www.w3.org/2000/svg width12 height12 viewBox0 0 12 12 fillnone aria-hiddentrue focusablefalse>path dM1.50002 4L6.00002 8L10.5 4 stroke-width1.5>/path>/svg>/button>ul data-wp-on-async--focusactions.openMenuOnFocus classwp-block-navigation__submenu-container wp-block-navigation-submenu>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://zeabur.com?referralCodemeathill target_blank >span classwp-block-navigation-item__label>Zeabur(Vercel 竞品)/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://www.bright.cn/proxy-types/?utm_sourcebrand&utm_campaignbrnd-mkt_cn_SF_meathill&promomeathill target_blank >span classwp-block-navigation-item__label>Bright Data/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://www.vps000.org/?code465CF3>span classwp-block-navigation-item__label>Cisco AnyConnect 好好上网/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://leancloud.cn/?sourceF88KG861>span classwp-block-navigation-item__label>超好用的后端 LeanCloud/span>/a>/li>li class wp-block-navigation-item wp-block-navigation-link>a classwp-block-navigation-item__content hrefhttps://www.vultr.com/?ref7124198>span classwp-block-navigation-item__label>Vultr VPS/span>/a>/li>/ul>/li>/ul>form rolesearch methodget actionhttps://blog.meathill.com/ classwp-block-search__button-inside wp-block-search__icon-button wp-block-search >label classwp-block-search__label screen-reader-text forwp-block-search__input-1 >搜索/label>div classwp-block-search__inside-wrapper >input classwp-block-search__input idwp-block-search__input-1 placeholder搜索 value typesearch names required />button aria-label搜索 classwp-block-search__button has-icon wp-element-button typesubmit >svg classsearch-icon viewBox0 0 24 24 width24 height24> path dM13 5c-3.3 0-6 2.7-6 6 0 1.4.5 2.7 1.3 3.7l-3.8 3.8 1.1 1.1 3.8-3.8c1 .8 2.3 1.3 3.7 1.3 3.3 0 6-2.7 6-6S16.3 5 13 5zm0 10.5c-2.5 0-4.5-2-4.5-4.5s2-4.5 4.5-4.5 4.5 2 4.5 4.5-2 4.5-4.5 4.5z>/path> /svg>/button>/div>/form> /div> /div> /div> /div>/nav> /div> /div>/header>main classwp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained stylemargin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--70)>h1 classwp-block-heading alignwide stylemargin-bottom:var(--wp--preset--spacing--60)>Meathill 的技术与日常/h1>form rolesearch methodget actionhttps://blog.meathill.com/ classwp-block-search__button-outside wp-block-search__text-button wp-block-search >label classwp-block-search__label has-small-font-size forwp-block-search__input-3 >搜索/label>div classwp-block-search__inside-wrapper stylewidth: 100%>input classwp-block-search__input has-small-font-size idwp-block-search__input-3 placeholder value typesearch names required />button aria-label搜索 classwp-block-search__button has-small-font-size wp-element-button typesubmit >搜索/button>/div>/form>div classwp-block-query alignwide has-global-padding is-layout-constrained wp-block-query-is-layout-constrained>ul classis-flex-container columns-3 alignwide wp-block-post-template is-layout-flow wp-block-post-template-is-layout-flow>li classwp-block-post post-3160235 post type-post status-publish format-standard has-post-thumbnail sticky hentry category-web3 tag-hackquest-io tag-web3 tag-1411521>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/web3/hackquest-io-solidity-rust-web3-workshop.html target_self styleheight:max(15vw, 30vh)>img width800 height798 srchttps://blog.meathill.com/wp-content/uploads/2024/05/1.png classattachment-post-thumbnail size-post-thumbnail wp-post-image altSolidity/Rust 实战 — Web3 开发共学活动 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync fetchpriorityhigh srcsethttps://blog.meathill.com/wp-content/uploads/2024/05/1.png 800w, https://blog.meathill.com/wp-content/uploads/2024/05/1-320x320.png 320w, https://blog.meathill.com/wp-content/uploads/2024/05/1-768x766.png 768w sizes(max-width: 800px) 100vw, 800px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/web3/hackquest-io-solidity-rust-web3-workshop.html target_self >Solidity/Rust 实战 — Web3 开发共学活动/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>感谢赞助商 HackQuest.io 委托我发布本条消息。 Solidity/Rust 共学营信息清单 关于 … /p>/div>div classwp-block-post-date>time datetime2024-05-18T15:18:29+08:00>a hrefhttps://blog.meathill.com/web3/hackquest-io-solidity-rust-web3-workshop.html>2024年5月18日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-1420234 post type-post status-publish format-standard has-post-thumbnail sticky hentry category-tech tag-sponser>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/sponsers.html target_self styleheight:max(15vw, 30vh)>img width1080 height1440 srchttps://blog.meathill.com/wp-content/uploads/2022/10/78d45ea8aa7897b73f45f76edead85.jpg classattachment-post-thumbnail size-post-thumbnail wp-post-image alt鸣谢各位老板舰长赞助商 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync srcsethttps://blog.meathill.com/wp-content/uploads/2022/10/78d45ea8aa7897b73f45f76edead85.jpg 1080w, https://blog.meathill.com/wp-content/uploads/2022/10/78d45ea8aa7897b73f45f76edead85-768x1024.jpg 768w, https://blog.meathill.com/wp-content/uploads/2022/10/78d45ea8aa7897b73f45f76edead85-810x1080.jpg 810w, https://blog.meathill.com/wp-content/uploads/2022/10/78d45ea8aa7897b73f45f76edead85-240x320.jpg 240w sizes(max-width: 1080px) 100vw, 1080px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/sponsers.html target_self >鸣谢各位老板舰长赞助商/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>想来想去,决定开个页面用来供奉各位支持过我的老板。 赞助我,让我贡献更多内容吧! 欢迎在 GitHub 上赞助… /p>/div>div classwp-block-post-date>time datetime2023-06-11T22:27:27+08:00>a hrefhttps://blog.meathill.com/tech/sponsers.html>2023年6月11日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-4533 post type-post status-publish format-standard has-post-thumbnail sticky hentry category-tech>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/welcome-sticky.html target_self styleheight:max(15vw, 30vh)>img width1200 height1600 srchttps://blog.meathill.com/wp-content/uploads/2022/10/7.jpg classattachment-post-thumbnail size-post-thumbnail wp-post-image alt欢迎欢迎 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync srcsethttps://blog.meathill.com/wp-content/uploads/2022/10/7.jpg 1200w, https://blog.meathill.com/wp-content/uploads/2022/10/7-768x1024.jpg 768w, https://blog.meathill.com/wp-content/uploads/2022/10/7-810x1080.jpg 810w, https://blog.meathill.com/wp-content/uploads/2022/10/7-240x320.jpg 240w, https://blog.meathill.com/wp-content/uploads/2022/10/7-1152x1536.jpg 1152w sizes(max-width: 1200px) 100vw, 1200px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/welcome-sticky.html target_self >欢迎欢迎/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>欢迎来到我的博客,我是 Meathill,想了解我可以点 关于我。 除了程序员,我还是个兴趣使然的 Web 开… /p>/div>div classwp-block-post-date>time datetime2021-02-02T00:00:41+08:00>a hrefhttps://blog.meathill.com/tech/welcome-sticky.html>2021年2月2日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3400234 post type-post status-publish format-standard has-post-thumbnail hentry category-tech tag-cloudflare tag-cloudflare-pages tag-edge-computing tag-nuxt tag-serverless tag-vercel>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/moved-my-nuxt3-sites-from-vercel-to-cloudflarenuxt.html target_self styleheight:max(15vw, 30vh)>img width1600 height1200 srchttps://blog.meathill.com/wp-content/uploads/2024/07/1.webp classattachment-post-thumbnail size-post-thumbnail wp-post-image alt搬家记:从 Vercel 到 Cloudflare(Nuxt 项目x2) styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/07/1.webp 1600w, https://blog.meathill.com/wp-content/uploads/2024/07/1-1024x768.webp 1024w, https://blog.meathill.com/wp-content/uploads/2024/07/1-1440x1080.webp 1440w, https://blog.meathill.com/wp-content/uploads/2024/07/1-320x240.webp 320w, https://blog.meathill.com/wp-content/uploads/2024/07/1-768x576.webp 768w, https://blog.meathill.com/wp-content/uploads/2024/07/1-1536x1152.webp 1536w sizes(max-width: 1600px) 100vw, 1600px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/moved-my-nuxt3-sites-from-vercel-to-cloudflarenuxt.html target_self >搬家记:从 Vercel 到 Cloudflare(Nuxt 项目x2)/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>月底的时候,收到 Vercel 的邮件,提示我账号内有一些额度用量已经消耗 50%。我没在意,心想反正月底,马… /p>/div>div classwp-block-post-date>time datetime2024-07-06T19:49:40+08:00>a hrefhttps://blog.meathill.com/tech/moved-my-nuxt3-sites-from-vercel-to-cloudflarenuxt.html>2024年7月6日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-2170238 post type-post status-publish format-standard has-post-thumbnail hentry category-web tag-mediadevices tag-mediarecorder tag-nuxt tag-speech-to-text tag-stt tag-1471525>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/web/practical-tutorial-integrate-speech-to-text-on-webpage-1-record-in-browser.html target_self styleheight:max(15vw, 30vh)>img width1600 height1200 srchttps://blog.meathill.com/wp-content/uploads/2024/06/1.webp classattachment-post-thumbnail size-post-thumbnail wp-post-image alt【实用教程】在网页里集成语音输入:1. 在浏览器里完成录音 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/06/1.webp 1600w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1024x768.webp 1024w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1440x1080.webp 1440w, https://blog.meathill.com/wp-content/uploads/2024/06/1-320x240.webp 320w, https://blog.meathill.com/wp-content/uploads/2024/06/1-768x576.webp 768w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1536x1152.webp 1536w sizes(max-width: 1600px) 100vw, 1600px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/web/practical-tutorial-integrate-speech-to-text-on-webpage-1-record-in-browser.html target_self >【实用教程】在网页里集成语音输入:1. 在浏览器里完成录音/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>继续写实用教程。接下来准备讲解一下如何在网页里集成语音识别,语音输入的功能。也就是俗称的 STT(Speech… /p>/div>div classwp-block-post-date>time datetime2024-06-22T16:07:22+08:00>a hrefhttps://blog.meathill.com/web/practical-tutorial-integrate-speech-to-text-on-webpage-1-record-in-browser.html>2024年6月22日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3340236 post type-post status-publish format-standard has-post-thumbnail hentry category-fe tag-css tag-mobile tag-mobile-web tag-safari>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/fe/best-practices-for-mobile-web-height-adaption.html target_self styleheight:max(15vw, 30vh)>img width2560 height1920 srchttps://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-scaled.jpg classattachment-post-thumbnail size-post-thumbnail wp-post-image alt移动网页高度自适应最佳实践 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-scaled.jpg 2560w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-1024x768.jpg 1024w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-1440x1080.jpg 1440w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-320x240.jpg 320w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-768x576.jpg 768w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-1536x1152.jpg 1536w, https://blog.meathill.com/wp-content/uploads/2024/06/IMG20240417172710-2048x1536.jpg 2048w sizes(max-width: 2560px) 100vw, 2560px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/fe/best-practices-for-mobile-web-height-adaption.html target_self >移动网页高度自适应最佳实践/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>移动 Web 开发就要在“螺蛳壳里做道场”。移动设备限于屏幕尺寸,不得已左支右绌,既要多呈现内容,又要保证功能… /p>/div>div classwp-block-post-date>time datetime2024-06-16T00:00:51+08:00>a hrefhttps://blog.meathill.com/tech/fe/best-practices-for-mobile-web-height-adaption.html>2024年6月16日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3280234 post type-post status-publish format-standard has-post-thumbnail hentry category-share tag-javascript tag-nuxt3 tag-ssr tag-vue tag-vue3 tag-vue3--nuxt3 tag-1213>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-4-ssr-and-useasyncdata.html target_self styleheight:max(15vw, 30vh)>img width1280 height720 srchttps://blog.meathill.com/wp-content/uploads/2024/06/1-1.png classattachment-post-thumbnail size-post-thumbnail wp-post-image alt【视频教程】技术栈大升级:Vue3 到 Nuxt3(4)深入理解 SSR 和 `useAsyncData` styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/06/1-1.png 1280w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1-1024x576.png 1024w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1-320x180.png 320w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1-768x432.png 768w sizes(max-width: 1280px) 100vw, 1280px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-4-ssr-and-useasyncdata.html target_self >【视频教程】技术栈大升级:Vue3 到 Nuxt3(4)深入理解 SSR 和 `useAsyncData`/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>2023 年,我个人最大的变化,是从 Vue3 SPA 应用向 Nuxt3 SSR 应用过渡,在预期可能存在 … /p>/div>div classwp-block-post-date>time datetime2024-06-10T21:37:12+08:00>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-4-ssr-and-useasyncdata.html>2024年6月10日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-2830234 post type-post status-publish format-standard has-post-thumbnail hentry category-share tag-nuxt3 tag-ssr tag-vue3 tag-vue3--nuxt3 tag-1213>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-2-and-3-upgrading-experience.html target_self styleheight:max(15vw, 30vh)>img width1200 height900 srchttps://blog.meathill.com/wp-content/uploads/2024/06/1.png classattachment-post-thumbnail size-post-thumbnail wp-post-image alt【视频教程】技术栈大升级:Vue3 到 Nuxt3(2-3)升级实战 – 基础知识,适配 SSR,页面路由 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/06/1.png 1200w, https://blog.meathill.com/wp-content/uploads/2024/06/1-1024x768.png 1024w, https://blog.meathill.com/wp-content/uploads/2024/06/1-320x240.png 320w, https://blog.meathill.com/wp-content/uploads/2024/06/1-768x576.png 768w sizes(max-width: 1200px) 100vw, 1200px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-2-and-3-upgrading-experience.html target_self >【视频教程】技术栈大升级:Vue3 到 Nuxt3(2-3)升级实战 – 基础知识,适配 SSR,页面路由/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>2023 年,我个人最大的变化,是从 Vue3 SPA 应用向 Nuxt3 SSR 应用过渡,在预期可能存在 … /p>/div>div classwp-block-post-date>time datetime2024-06-02T20:50:14+08:00>a hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-2-and-3-upgrading-experience.html>2024年6月2日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3190234 post type-post status-publish format-standard has-post-thumbnail hentry category-js tag-audio tag-ios tag-macos tag-nuxt3 tag-safari>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/js/tips-for-playing-sound-in-ios-safari.html target_self styleheight:max(15vw, 30vh)>img width1600 height1200 srchttps://blog.meathill.com/wp-content/uploads/2024/05/1-1.webp classattachment-post-thumbnail size-post-thumbnail wp-post-image altiOS Safari 播放音频的技巧分享 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/05/1-1.webp 1600w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1-1024x768.webp 1024w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1-1440x1080.webp 1440w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1-320x240.webp 320w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1-768x576.webp 768w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1-1536x1152.webp 1536w sizes(max-width: 1600px) 100vw, 1600px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/js/tips-for-playing-sound-in-ios-safari.html target_self >iOS Safari 播放音频的技巧分享/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>开发 Web App 一直是个蛮尴尬的事情。一方面,Google 不断在推;PWA 等技术也越来越好;另一方面… /p>/div>div classwp-block-post-date>time datetime2024-05-25T16:51:01+08:00>a hrefhttps://blog.meathill.com/js/tips-for-playing-sound-in-ios-safari.html>2024年5月25日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3130236 post type-post status-publish format-standard has-post-thumbnail hentry category-extension category-tech tag-chrome-extension tag-chrome-identity tag-google-sso tag-supabase>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/tutorial-how-to-integrate-google-sso-in-browser-extension-2.html target_self styleheight:max(15vw, 30vh)>img width1920 height2560 srchttps://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-scaled.jpg classattachment-post-thumbnail size-post-thumbnail wp-post-image alt【教程】浏览器扩展中实现一键登录 Google(2) styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-scaled.jpg 1920w, https://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-768x1024.jpg 768w, https://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-810x1080.jpg 810w, https://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-240x320.jpg 240w, https://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-1152x1536.jpg 1152w, https://blog.meathill.com/wp-content/uploads/2024/05/IMG20240418123515-1536x2048.jpg 1536w sizes(max-width: 1920px) 100vw, 1920px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/tutorial-how-to-integrate-google-sso-in-browser-extension-2.html target_self >【教程】浏览器扩展中实现一键登录 Google(2)/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>本文接续前一篇 【教程】浏览器扩展中实现一键登录 Google(1),重点介绍代码相关的部分。 SSO 简介 … /p>/div>div classwp-block-post-date>time datetime2024-05-11T19:35:03+08:00>a hrefhttps://blog.meathill.com/tech/tutorial-how-to-integrate-google-sso-in-browser-extension-2.html>2024年5月11日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3040234 post type-post status-publish format-standard has-post-thumbnail hentry category-tech tag-zeabur tag-1411521>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/tech/thanks-to-zeabur-for-being-the-first-sponsor-of-this-site.html target_self styleheight:max(15vw, 30vh)>img width1600 height1200 srchttps://blog.meathill.com/wp-content/uploads/2024/05/1.webp classattachment-post-thumbnail size-post-thumbnail wp-post-image alt感谢 Zeabur 成为本站第一位赞助商 styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/05/1.webp 1600w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1024x768.webp 1024w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1440x1080.webp 1440w, https://blog.meathill.com/wp-content/uploads/2024/05/1-320x240.webp 320w, https://blog.meathill.com/wp-content/uploads/2024/05/1-768x576.webp 768w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1536x1152.webp 1536w sizes(max-width: 1600px) 100vw, 1600px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/tech/thanks-to-zeabur-for-being-the-first-sponsor-of-this-site.html target_self >感谢 Zeabur 成为本站第一位赞助商/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>2023 年年初,我在刷推的时候受 @xiqingongzi 启发,决定为本站进行招商。想法很简单:钱不钱的不… /p>/div>div classwp-block-post-date>time datetime2024-05-03T19:40:26+08:00>a hrefhttps://blog.meathill.com/tech/thanks-to-zeabur-for-being-the-first-sponsor-of-this-site.html>2024年5月3日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>li classwp-block-post post-3010234 post type-post status-publish format-standard has-post-thumbnail hentry category-ai tag-ai tag-1381520 tag-1381521 tag-1253 tag-933>figure stylewidth:100%;height:max(15vw, 30vh); classalignwide wp-block-post-featured-image>a hrefhttps://blog.meathill.com/ai/video-tutorial-building-scraping-and-ai-tools-to-find-fulltime-remote-job.html target_self styleheight:max(15vw, 30vh)>img width1440 height1080 srchttps://blog.meathill.com/wp-content/uploads/2024/05/1.jpg classattachment-post-thumbnail size-post-thumbnail wp-post-image alt【视频教程】开发AI求职助手,一起走上全职远程之路(一) styleheight:max(15vw, 30vh);object-fit:cover; decodingasync loadinglazy srcsethttps://blog.meathill.com/wp-content/uploads/2024/05/1.jpg 1440w, https://blog.meathill.com/wp-content/uploads/2024/05/1-1024x768.jpg 1024w, https://blog.meathill.com/wp-content/uploads/2024/05/1-320x240.jpg 320w, https://blog.meathill.com/wp-content/uploads/2024/05/1-768x576.jpg 768w sizes(max-width: 1440px) 100vw, 1440px />/a>/figure>h2 classwp-block-post-title>a hrefhttps://blog.meathill.com/ai/video-tutorial-building-scraping-and-ai-tools-to-find-fulltime-remote-job.html target_self >【视频教程】开发AI求职助手,一起走上全职远程之路(一)/a>/h2>div classwp-block-post-excerpt>p classwp-block-post-excerpt__excerpt>新系列简介 开个新坑。其实类似的想法我去年就有了,但是一直没有做,除了懒之外,很大的问题就是我不会爬虫。而且在… /p>/div>div classwp-block-post-date>time datetime2024-05-01T21:18:40+08:00>a hrefhttps://blog.meathill.com/ai/video-tutorial-building-scraping-and-ai-tools-to-find-fulltime-remote-job.html>2024年5月1日/a>/time>/div>div styleheight:var(--wp--preset--spacing--40) aria-hiddentrue classwp-block-spacer>/div>/li>/ul>nav classalignwide wp-block-query-pagination is-content-justification-space-between is-layout-flex wp-container-core-query-pagination-is-layout-1 wp-block-query-pagination-is-layout-flex aria-label分页>div classwp-block-query-pagination-numbers>span aria-currentpage classpage-numbers current>1/span>a classpage-numbers hrefhttps://blog.meathill.com/page/2>2/a>a classpage-numbers hrefhttps://blog.meathill.com/page/3>3/a>span classpage-numbers dots>…/span>a classpage-numbers hrefhttps://blog.meathill.com/page/75>75/a>/div>a hrefhttps://blog.meathill.com/page/2 classwp-block-query-pagination-next>Older Postsspan classwp-block-query-pagination-next-arrow is-arrow-arrow aria-hiddentrue>→/span>/a>/nav>/div>div styleheight:var(--wp--preset--spacing--60) aria-hiddentrue classwp-block-spacer>/div>div classwp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-1 wp-block-columns-is-layout-flex>div classwp-block-column is-layout-flow wp-block-column-is-layout-flow>div classwp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex>div classwp-block-button has-custom-font-size has-small-font-size>a classwp-block-button__link wp-element-button hrefhttps://blog.meathill.com/about>关于我/a>/div>/div>ul classwp-block-latest-posts__list has-dates wp-block-latest-posts has-small-font-size>li>a classwp-block-latest-posts__post-title hrefhttps://blog.meathill.com/tech/moved-my-nuxt3-sites-from-vercel-to-cloudflarenuxt.html>搬家记:从 Vercel 到 Cloudflare(Nuxt 项目x2)/a>time datetime2024-07-06T19:49:40+08:00 classwp-block-latest-posts__post-date>2024年7月6日/time>div classwp-block-latest-posts__post-excerpt>月底的时候,收到 Vercel 的邮件,提示我账号内有一些额度用量已经消耗 50%。我没在意,心想反正月底,马… a classwp-block-latest-posts__read-more hrefhttps://blog.meathill.com/tech/moved-my-nuxt3-sites-from-vercel-to-cloudflarenuxt.html relnoopener noreferrer>Read morespan classscreen-reader-text>: 搬家记:从 Vercel 到 Cloudflare(Nuxt 项目x2)/span>/a>/div>/li>li>a classwp-block-latest-posts__post-title hrefhttps://blog.meathill.com/web/practical-tutorial-integrate-speech-to-text-on-webpage-1-record-in-browser.html>【实用教程】在网页里集成语音输入:1. 在浏览器里完成录音/a>time datetime2024-06-22T16:07:22+08:00 classwp-block-latest-posts__post-date>2024年6月22日/time>div classwp-block-latest-posts__post-excerpt>继续写实用教程。接下来准备讲解一下如何在网页里集成语音识别,语音输入的功能。也就是俗称的 STT(Speech… a classwp-block-latest-posts__read-more hrefhttps://blog.meathill.com/web/practical-tutorial-integrate-speech-to-text-on-webpage-1-record-in-browser.html relnoopener noreferrer>Read morespan classscreen-reader-text>: 【实用教程】在网页里集成语音输入:1. 在浏览器里完成录音/span>/a>/div>/li>li>a classwp-block-latest-posts__post-title hrefhttps://blog.meathill.com/tech/fe/best-practices-for-mobile-web-height-adaption.html>移动网页高度自适应最佳实践/a>time datetime2024-06-16T00:00:51+08:00 classwp-block-latest-posts__post-date>2024年6月16日/time>div classwp-block-latest-posts__post-excerpt>移动 Web 开发就要在“螺蛳壳里做道场”。移动设备限于屏幕尺寸,不得已左支右绌,既要多呈现内容,又要保证功能… a classwp-block-latest-posts__read-more hrefhttps://blog.meathill.com/tech/fe/best-practices-for-mobile-web-height-adaption.html relnoopener noreferrer>Read morespan classscreen-reader-text>: 移动网页高度自适应最佳实践/span>/a>/div>/li>li>a classwp-block-latest-posts__post-title hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-4-ssr-and-useasyncdata.html>【视频教程】技术栈大升级:Vue3 到 Nuxt3(4)深入理解 SSR 和 `useAsyncData`/a>time datetime2024-06-10T21:37:12+08:00 classwp-block-latest-posts__post-date>2024年6月10日/time>div classwp-block-latest-posts__post-excerpt>2023 年,我个人最大的变化,是从 Vue3 SPA 应用向 Nuxt3 SSR 应用过渡,在预期可能存在 … a classwp-block-latest-posts__read-more hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-4-ssr-and-useasyncdata.html relnoopener noreferrer>Read morespan classscreen-reader-text>: 【视频教程】技术栈大升级:Vue3 到 Nuxt3(4)深入理解 SSR 和 `useAsyncData`/span>/a>/div>/li>li>a classwp-block-latest-posts__post-title hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-2-and-3-upgrading-experience.html>【视频教程】技术栈大升级:Vue3 到 Nuxt3(2-3)升级实战 – 基础知识,适配 SSR,页面路由/a>time datetime2024-06-02T20:50:14+08:00 classwp-block-latest-posts__post-date>2024年6月2日/time>div classwp-block-latest-posts__post-excerpt>2023 年,我个人最大的变化,是从 Vue3 SPA 应用向 Nuxt3 SSR 应用过渡,在预期可能存在 … a classwp-block-latest-posts__read-more hrefhttps://blog.meathill.com/share/video-tutorial-how-to-upgrade-from-vue3-to-nuxt3-2-and-3-upgrading-experience.html relnoopener noreferrer>Read morespan classscreen-reader-text>: 【视频教程】技术栈大升级:Vue3 到 Nuxt3(2-3)升级实战 – 基础知识,适配 SSR,页面路由/span>/a>/div>/li>/ul>/div>div classwp-block-column is-layout-flow wp-block-column-is-layout-flow>hr classwp-block-separator has-alpha-channel-opacity/>div classwp-block-jetpack-calendly>/div>/div>/div>/main>footer classwp-block-template-part>div classwp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained> div classwp-block-group alignwide is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-4 wp-block-group-is-layout-flex stylepadding-top:var(--wp--preset--spacing--40)> form rolesearch methodget actionhttps://blog.meathill.com/ classwp-block-search__button-outside wp-block-search__text-button wp-block-search >label classwp-block-search__label screen-reader-text forwp-block-search__input-4 >搜索/label>div classwp-block-search__inside-wrapper >input classwp-block-search__input idwp-block-search__input-4 placeholder value typesearch names required />button aria-label搜索 classwp-block-search__button wp-element-button typesubmit >搜索/button>/div>/form>p classwp-block-site-title>a hrefhttps://blog.meathill.com target_self relhome aria-currentpage>山维空间/a>/p> p classhas-text-align-right> 自豪地采用 a hrefhttps://cn.wordpress.org relnofollow>WordPress/a> /p> /div> /div>/footer>/div>script async srchttps://www.googletagmanager.com/gtag/js?idG-6X03SBJR88>/script>script> // 微信打赏 (function () { if (!/\bmicromessenger\b/i.test(navigator.userAgent)) { return; } var container document.querySelector(body.single-post .entry-content); if (!container) { return; } var div document.createElement(div); div.className weixin-gathering; div.innerHTML hr>p>随手打赏,满身余香。您的支持将鼓励我继续创作!small>(长按二维码识别打赏)/small>/p>p>img src/wp-content/uploads/weixin-gathering.png alt微信打赏 width240 height240>/p>; var share container.getElementsByClassName(sharedaddy)0; container.insertBefore(div, share); }()); // GA window.dataLayer window.dataLayer || ; function gtag(){dataLayer.push(arguments);} gtag(js, new Date()); gtag(config, G-6X03SBJR88); // insert ADs const couplet document.createElement(div); couplet.classList.add(meathill-ad-couplet); couplet.innerHTML `a hrefhttps://zeabur.com/?referralCodemeathill target_blank relnoopener noreferrer>img altZeabur 一键部署服务 无需租用服务器 src/wp-content/uploads/ad/zeabur-120x600.webp width120 height600 />/a>a hrefhttps://zeabur.com/?referralCodemeathill target_blank relnoopener noreferrer>img altZeabur 一键部署服务 无需租用服务器 src/wp-content/uploads/ad/zeabur-120x600.webp width120 height600 />/a>`; document.body.appendChild(couplet); const inContent document.createElement(div); inContent.classList.add(meathill-ad-in-content); inContent.innerHTML `a hrefhttps://zeabur.com/?referralCodemeathill target_blank relnoopener noreferrer>img altZeabur 一键部署服务 无需租用服务器 src/wp-content/uploads/ad/zeabur-650x280.webp width650 height280 />/a>`; const ps document.querySelectorAll(.entry-content p); const p ps3 || psps.length - 1; if (p) { p.parentElement.insertBefore(inContent, p); }/script>style>.meathill-ad-couplet { position: fixed; top: 12.5rem; width: 100%; max-width: var(--wp--style--global--wide-size); margin-right: calc((100% - var(--wp--style--global--wide-size)) / 2); margin-left: calc((100% - var(--wp--style--global--wide-size)) / 2);}.meathill-ad-couplet > a { position: absolute; top: 0; display: block;}.meathill-ad-couplet img { width: 120px; height: 600px; display: block;}.meathill-ad-couplet > a:first-child { right: calc(100% + 2rem);}.meathill-ad-couplet > a:last-child { left: calc(100% + 2rem);}@media (max-width: 1440px) { .meathill-ad-couplet { display: none; }}.meathill-ad-in-content { margin-block-start: 1.5rem; display: flex; justify-content: center;}.meathill-ad-in-content a,.meathill-ad-in-content img { display: block;}.meathill-ad-in-content img { width: 100%; height: auto; max-width: 650px; aspect-ratio: 650 / 280;}/style>script idwp-block-template-skip-link-js-after> ( function() { var skipLinkTarget document.querySelector( main ), sibling, skipLinkTargetID, skipLink; // Early exit if a skip-link target cant be located. if ( ! skipLinkTarget ) { return; } /* * Get the site wrapper. * The skip-link will be injected in the beginning of it. */ sibling document.querySelector( .wp-site-blocks ); // Early exit if the root element was not found. if ( ! sibling ) { return; } // Get the skip-link targets ID, and generate one if it doesnt exist. skipLinkTargetID skipLinkTarget.id; if ( ! skipLinkTargetID ) { skipLinkTargetID wp--skip-link--target; skipLinkTarget.id skipLinkTargetID; } // Create the skip link. skipLink document.createElement( a ); skipLink.classList.add( skip-link, screen-reader-text ); skipLink.href # + skipLinkTargetID; skipLink.innerHTML 跳至内容; // Inject the skip link. sibling.parentElement.insertBefore( skipLink, sibling ); }() ); /script>script idmkaz-code-syntax-prism-js-js-extra>var prism_settings {pluginUrl:https:\/\/blog.meathill.com\/wp-content\/plugins\/code-syntax-block\/};/script>script srchttps://blog.meathill.com/wp-content/plugins/code-syntax-block/assets/prism/prism.js?ver1715218883 idmkaz-code-syntax-prism-js-js>/script>script srchttps://code.jquery.com/jquery-3.6.4.slim.min.js idjquery-js>/script>/body>/html>!-- Dynamic page generated in 2.808 seconds. -->!-- Cached page generated by WP-Super-Cache on 2024-07-11 18:38:58 -->!-- Compression gzip -->!-- super cache -->
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]