当前位置:首页 > 文章列表 > 文章 > 前端 > OG标签优化与社交分享兼容方案

OG标签优化与社交分享兼容方案

2026-04-29 12:45:46 0浏览 收藏
HTML OG标签优化是确保网页在微信、微博、钉钉等社交平台分享时正确展示标题、描述和图片的关键,其失效往往并非遗漏标签,而是因og:url与分享链接不一致、og:type缺失、og:image未用绝对URL或尺寸不达标、服务端未在首屏HTML中静态注入(尤其对SPA应用),以及平台缓存未及时刷新所致;要真正生效,必须通过各平台官方调试工具验证真实抓取结果,并针对性解决CDN缓存、SSR/SSG配置、响应头控制等底层问题。

HTML OG标签如何优化社交分享_HTML OG标签与社交分享兼容方案【常见问题】

OG 标签没生效,大概率不是漏写了 meta,而是 og:url、og:type 或缓存机制出了问题。

为什么分享到微信/微博/钉钉后显示空白或默认标题?

社交平台抓取页面时,只读取 HTML 静态 meta 标签(不执行 JS),且严格依赖 og:title、og:description、og:image 三者齐全。缺任意一个,多数平台会降级为展示 </code> + 页面首段文本 + 网站 favicon,甚至直接失败。</p> <ul><li><code>og:image</code> 必须是绝对 URL(如 <code>https://example.com/img/share.jpg</code>),相对路径、本地路径、带 query 参数的动态图(如 <code>?v=123</code>)常被拒绝</li> <li><code>og:image</code> 尺寸建议 ≥ 1200×630 px,否则微信可能压缩成模糊小图;微博要求宽高比 1:1 或 2:1</li> <li>微信内置浏览器(特别是旧版)不识别 <code>og:video</code> 和 <code>og:audio</code>,纯当普通页面处理</li> <li>部分平台(如钉钉)会校验 <code>og:url</code> 是否与当前分享链接完全一致(含 trailing slash、大小写、协议),不一致则忽略全部 OG 信息</li> </ul><h3>Next.js / Vue SPA 如何确保服务端吐出正确 OG 标签?</h3> <p>单页应用在首屏由 JS 渲染,但爬虫不等 JS 执行,必须让服务端(或 SSR/SSG)在 HTML 响应中直接注入最终值。客户端改 <code>document.head</code> 无效。</p> <ul><li>Next.js:用 <code>getStaticProps</code> 或 <code>getServerSideProps</code> 获取数据,通过 <code>Head</code> 组件写入;动态路由需确保参数能映射到真实内容(如 <code>/post/[id]</code> → <code>og:title</code> 取自 id 对应文章)</li> <li>Vue + Nuxt:优先用 <code>head()</code> 函数返回对象,避免在 <code>mounted</code> 中操作 DOM</li> <li>若用纯 CSR(如 Vite + vanilla JS),只能靠预渲染(prerender-spa-plugin)或边缘函数(Cloudflare Workers / Vercel Edge Functions)动态生成 HTML</li> <li>务必验证响应头:<code>curl -I https://yoursite.com/post/123</code> 确认返回的是完整 HTML,而非重定向或 404</li> </ul><h3>如何快速验证 OG 标签是否被正确识别?</h3> <p>别信浏览器开发者工具里看到的 <code>meta</code>——那是你本地渲染的结果。要用平台官方调试工具看真实抓取效果。</p> <ul><li>微信:用「微信公众平台 → 工具 → 网页调试」,输入 URL 后点“检测”,它会模拟微信内置浏览器抓取并显示解析结果</li> <li>Facebook:用 <code>https://developers.facebook.com/tools/debug/</code>,支持强制重新抓取(Fetch new scrape information)</li> <li>LinkedIn:用 <code>https://www.linkedin.com/post-inspector/</code>,对 <code>og:image</code> 的 HTTPS 和 CORS 要求极严</li> <li>注意:所有平台都会缓存 OG 数据(微信约 24h,Facebook 默认 7d),改完标签后必须主动触发刷新,否则看不到变化</li> </ul><p>最常被忽略的一点:CDN 或反向代理(如 Nginx)可能缓存了旧 HTML 响应,导致你改了代码但爬虫始终拿到过期版本。检查 <code>Cache-Control</code> 响应头,对含 <code>og:</code> 的页面禁用 HTML 缓存,或加 cache busting 参数(如 <code>?ogv=2</code>)。</p><p>今天关于《OG标签优化与社交分享兼容方案》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!</p> </div> <div class="labsList"> </div> <div class="cateBox"> <div class="cateItem"> <a href="/article/581533.html" title="书香门第官网登录入口及论坛地址" class="img_box"> <img src="/uploads/20260429/177743794669f18cfa1b122.png" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="书香门第官网登录入口及论坛地址">书香门第官网登录入口及论坛地址 </a> <dl> <dt class="lineOverflow"><a href="/article/581533.html" title="书香门第官网登录入口及论坛地址" class="aBlack">上一篇<i></i></a></dt> <dd class="lineTwoOverflow">书香门第官网登录入口及论坛地址</dd> </dl> </div> <div class="cateItem"> <a href="/article/581535.html" title="HTML5中header标签的使用方法" class="img_box"> <img src="/uploads/20260429/177743795569f18d03d5523.png" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="HTML5中header标签的使用方法"> </a> <dl> <dt class="lineOverflow"><a href="/article/581535.html" class="aBlack" title="HTML5中header标签的使用方法">下一篇<i></i></a></dt> <dd class="lineTwoOverflow">HTML5中header标签的使用方法</dd> </dl> </div> </div> </div> </div> <div class="leftContBox pt0"> <div class="pdl20"> <div class="contTit"> <a href="/articlelist.html" class="more" title="查看更多">查看更多<i class="iconfont"></i></a> <div class="tit">最新文章</div> </div> </div> <ul class="newArticleList"> <li> <div class="contBox"> <a href="/article/628966.html" class="img_box" title="PerformanceResourceTiming 拆分 DNS 与 TLS 耗时"> <img src="/uploads/20261001/1790854465-43fa0f7b0d-6e918d66c1-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="PerformanceResourceTiming 拆分 DNS 与 TLS 耗时"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  9小时前  |   <a href="/articletag/4701_new_0_1.html" class="aLightGray" title="javascript">javascript</a> · <a href="javascript:;" class="aLightGray" title="DNS耗时">DNS耗时</a> <a href="javascript:;" class="aLightGray" title="PerformanceResourceTiming">PerformanceResourceTiming</a> <a href="javascript:;" class="aLightGray" title="TLS耗时">TLS耗时</a> </span> </dd> <dt class="lineOverflow"> <a href="/article/628966.html" class="aBlack" target="_blank" title="PerformanceResourceTiming 拆分 DNS 与 TLS 耗时">PerformanceResourceTiming 拆分 DNS 与 TLS 耗时</a> </dt> <dd class="cont2"> <span><i class="view"></i>108浏览</span> <span class="collectBtn user_collection" data-id="628966" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> <li> <div class="contBox"> <a href="/article/628935.html" class="img_box" title="WebSocket 重连退避与页面卸载的收尾"> <img src="/uploads/20260929/1790633423-05faf3813b-fbcd61628a-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="WebSocket 重连退避与页面卸载的收尾"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  2天前  |   <a href="/articletag/243_new_0_1.html" class="aLightGray" title="前端">前端</a> · <a href="/articletag/1017_new_0_1.html" class="aLightGray" title="websocket">websocket</a> · </span> </dd> <dt class="lineOverflow"> <a href="/article/628935.html" class="aBlack" target="_blank" title="WebSocket 重连退避与页面卸载的收尾">WebSocket 重连退避与页面卸载的收尾</a> </dt> <dd class="cont2"> <span><i class="view"></i>381浏览</span> <span class="collectBtn user_collection" data-id="628935" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> <li> <div class="contBox"> <a href="/article/628898.html" class="img_box" title="Fetch keepalive 处理页面卸载前的小请求"> <img src="/uploads/20260929/1790625388-2ecad5c195-630d4e3340-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="Fetch keepalive 处理页面卸载前的小请求"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  3天前  |   </span> </dd> <dt class="lineOverflow"> <a href="/article/628898.html" class="aBlack" target="_blank" title="Fetch keepalive 处理页面卸载前的小请求">Fetch keepalive 处理页面卸载前的小请求</a> </dt> <dd class="cont2"> <span><i class="view"></i>291浏览</span> <span class="collectBtn user_collection" data-id="628898" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> <li> <div class="contBox"> <a href="/article/628861.html" class="img_box" title="CSS @scope 限定组件样式作用域的迁移方法"> <img src="/uploads/20260929/1790617094-72cf73b65f-35bf712b77-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="CSS @scope 限定组件样式作用域的迁移方法"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  3天前  |   </span> </dd> <dt class="lineOverflow"> <a href="/article/628861.html" class="aBlack" target="_blank" title="CSS @scope 限定组件样式作用域的迁移方法">CSS @scope 限定组件样式作用域的迁移方法</a> </dt> <dd class="cont2"> <span><i class="view"></i>294浏览</span> <span class="collectBtn user_collection" data-id="628861" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> <li> <div class="contBox"> <a href="/article/628828.html" class="img_box" title="View Transition API 在 SPA 状态切换中的降级方案"> <img src="/uploads/20260928/1790608028-338e668a61-f019ad7860-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="View Transition API 在 SPA 状态切换中的降级方案"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  3天前  |   </span> </dd> <dt class="lineOverflow"> <a href="/article/628828.html" class="aBlack" target="_blank" title="View Transition API 在 SPA 状态切换中的降级方案">View Transition API 在 SPA 状态切换中的降级方案</a> </dt> <dd class="cont2"> <span><i class="view"></i>142浏览</span> <span class="collectBtn user_collection" data-id="628828" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> <li> <div class="contBox"> <a href="/article/628791.html" class="img_box" title="FormDataEvent 统一拦截原生表单数据的实现"> <img src="/uploads/20260928/1790598992-d7892db084-db4a0710e6-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="FormDataEvent 统一拦截原生表单数据的实现"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  3天前  |   <a href="/articletag/4701_new_0_1.html" class="aLightGray" title="javascript">javascript</a> · <a href="/articletag/39796_new_0_1.html" class="aLightGray" title="表单">表单</a> · <a href="javascript:;" class="aLightGray" title="FormData">FormData</a> <a href="javascript:;" class="aLightGray" title="FormDataEvent">FormDataEvent</a> <a href="javascript:;" class="aLightGray" title="formdata事件">formdata事件</a> <a href="javascript:;" class="aLightGray" title="原生表单">原生表单</a> </span> </dd> <dt class="lineOverflow"> <a href="/article/628791.html" class="aBlack" target="_blank" title="FormDataEvent 统一拦截原生表单数据的实现">FormDataEvent 统一拦截原生表单数据的实现</a> </dt> <dd class="cont2"> <span><i class="view"></i>288浏览</span> <span class="collectBtn user_collection" data-id="628791" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> <li> <div class="contBox"> <a href="/article/628732.html" class="img_box" title="requestSubmit 与 form.submit 有什么区别"> <img src="/uploads/20260928/1790567765-fb3386bf53-d03de0145e-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="requestSubmit 与 form.submit 有什么区别"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  3天前  |   <a href="/articletag/240_new_0_1.html" class="aLightGray" title="html">html</a> · <a href="/articletag/4701_new_0_1.html" class="aLightGray" title="javascript">javascript</a> · <a href="/articletag/39796_new_0_1.html" class="aLightGray" title="表单">表单</a> · <a href="javascript:;" class="aLightGray" title="requestSubmit">requestSubmit</a> <a href="javascript:;" class="aLightGray" title="form.submit">form.submit</a> <a href="javascript:;" class="aLightGray" title="HTML表单校验">HTML表单校验</a> </span> </dd> <dt class="lineOverflow"> <a href="/article/628732.html" class="aBlack" target="_blank" title="requestSubmit 与 form.submit 有什么区别">requestSubmit 与 form.submit 有什么区别</a> </dt> <dd class="cont2"> <span><i class="view"></i>392浏览</span> <span class="collectBtn user_collection" data-id="628732" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> <li> <div class="contBox"> <a href="/article/628698.html" class="img_box" title="scheduler.yield 怎么把长任务拆开又保持优先级"> <img src="/uploads/20260928/1790548372-6dd18971c7-ad2cee9c79-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="scheduler.yield 怎么把长任务拆开又保持优先级"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  3天前  |   </span> </dd> <dt class="lineOverflow"> <a href="/article/628698.html" class="aBlack" target="_blank" title="scheduler.yield 怎么把长任务拆开又保持优先级">scheduler.yield 怎么把长任务拆开又保持优先级</a> </dt> <dd class="cont2"> <span><i class="view"></i>110浏览</span> <span class="collectBtn user_collection" data-id="628698" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> <li> <div class="contBox"> <a href="/article/628663.html" class="img_box" title="CSS scroll-timeline 怎么驱动滚动进度动画"> <img src="/uploads/20260928/1790541441-6aa49ed683-5c7f576dc2-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="CSS scroll-timeline 怎么驱动滚动进度动画"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  4天前  |   <a href="javascript:;" class="aLightGray" title="CSS">CSS</a> <a href="javascript:;" class="aLightGray" title="滚动动画">滚动动画</a> <a href="javascript:;" class="aLightGray" title="animation-timeline">animation-timeline</a> <a href="javascript:;" class="aLightGray" title="scroll-timeline">scroll-timeline</a> </span> </dd> <dt class="lineOverflow"> <a href="/article/628663.html" class="aBlack" target="_blank" title="CSS scroll-timeline 怎么驱动滚动进度动画">CSS scroll-timeline 怎么驱动滚动进度动画</a> </dt> <dd class="cont2"> <span><i class="view"></i>251浏览</span> <span class="collectBtn user_collection" data-id="628663" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> <li> <div class="contBox"> <a href="/article/628628.html" class="img_box" title="IntersectionObserver scrollMargin 怎么处理嵌套滚动容器"> <img src="/uploads/20260928/1790533291-72567f3020-d2158a67ed-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="IntersectionObserver scrollMargin 怎么处理嵌套滚动容器"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  4天前  |   </span> </dd> <dt class="lineOverflow"> <a href="/article/628628.html" class="aBlack" target="_blank" title="IntersectionObserver scrollMargin 怎么处理嵌套滚动容器">IntersectionObserver scrollMargin 怎么处理嵌套滚动容器</a> </dt> <dd class="cont2"> <span><i class="view"></i>380浏览</span> <span class="collectBtn user_collection" data-id="628628" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> <li> <div class="contBox"> <a href="/article/628589.html" class="img_box" title="dialog 的 closedby 属性怎么控制关闭方式"> <img src="/uploads/20260927/1790523663-76de386ebe-2a9ae5f564-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="dialog 的 closedby 属性怎么控制关闭方式"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  4天前  |   </span> </dd> <dt class="lineOverflow"> <a href="/article/628589.html" class="aBlack" target="_blank" title="dialog 的 closedby 属性怎么控制关闭方式">dialog 的 closedby 属性怎么控制关闭方式</a> </dt> <dd class="cont2"> <span><i class="view"></i>269浏览</span> <span class="collectBtn user_collection" data-id="628589" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> <li> <div class="contBox"> <a href="/article/628560.html" class="img_box" title="HTML popover 属性怎么管理轻量浮层"> <img src="/uploads/20260927/1790512316-ceff29ace1-6afc61e26a-cover-640.webp" onerror="this.src='/assets/images/moren/morentu.png'" alt="HTML popover 属性怎么管理轻量浮层"> </a> <dl> <dd class="cont1"> <span> <a href="/articlelist/19_new_0_1.html" class="aLightGray" title="文章">文章</a> · <a href="/articlelist/88_new_0_1.html" class="aLightGray" title="前端">前端</a>   |  4天前  |   </span> </dd> <dt class="lineOverflow"> <a href="/article/628560.html" class="aBlack" target="_blank" title="HTML popover 属性怎么管理轻量浮层">HTML popover 属性怎么管理轻量浮层</a> </dt> <dd class="cont2"> <span><i class="view"></i>249浏览</span> <span class="collectBtn user_collection" data-id="628560" data-type="article" title="收藏"><i class="collect"></i>收藏</span> </dd> </dl> </div> </li> </ul> </div> </div> <div class="mainRight"> <!-- 右侧广告位banner --> <div class="rightContBox" style="margin-top: 0px;"> <div class="rightTit"> <a href="/courselist.html" class="more" title="查看更多">查看更多<i class="iconfont"></i></a> <div class="tit lineOverflow">课程推荐</div> </div> <ul class="lessonRecomRList"> <li> <a href="/course/9.html" class="img_box" target="_blank" title="前端进阶之JavaScript设计模式"> <img src="/uploads/20221222/52fd0f23a454c71029c2c72d206ed815.jpg" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="前端进阶之JavaScript设计模式"> </a> <dl> <dt class="lineTwoOverflow"><a href="/course/9.html" target="_blank" class="aBlack" title="前端进阶之JavaScript设计模式">前端进阶之JavaScript设计模式</a></dt> <dd class="cont1 lineTwoOverflow"> 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。 </dd> <dd class="cont2">543次学习</dd> </dl> </li> <li> <a href="/course/2.html" class="img_box" target="_blank" title="GO语言核心编程课程"> <img src="/uploads/20221221/634ad7404159bfefc6a54a564d437b5f.png" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="GO语言核心编程课程"> </a> <dl> <dt class="lineTwoOverflow"><a href="/course/2.html" target="_blank" class="aBlack" title="GO语言核心编程课程">GO语言核心编程课程</a></dt> <dd class="cont1 lineTwoOverflow"> 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。 </dd> <dd class="cont2">516次学习</dd> </dl> </li> <li> <a href="/course/74.html" class="img_box" target="_blank" title="简单聊聊mysql8与网络通信"> <img src="/uploads/20240103/bad35fe14edbd214bee16f88343ac57c.png" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="简单聊聊mysql8与网络通信"> </a> <dl> <dt class="lineTwoOverflow"><a href="/course/74.html" target="_blank" class="aBlack" title="简单聊聊mysql8与网络通信">简单聊聊mysql8与网络通信</a></dt> <dd class="cont1 lineTwoOverflow"> 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让 </dd> <dd class="cont2">500次学习</dd> </dl> </li> <li> <a href="/course/57.html" class="img_box" target="_blank" title="JavaScript正则表达式基础与实战"> <img src="/uploads/20221226/bbe4083bb3cb0dd135fb02c31c3785fb.jpg" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="JavaScript正则表达式基础与实战"> </a> <dl> <dt class="lineTwoOverflow"><a href="/course/57.html" target="_blank" class="aBlack" title="JavaScript正则表达式基础与实战">JavaScript正则表达式基础与实战</a></dt> <dd class="cont1 lineTwoOverflow"> 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。 </dd> <dd class="cont2">487次学习</dd> </dl> </li> <li> <a href="/course/28.html" class="img_box" target="_blank" title="从零制作响应式网站—Grid布局"> <img src="/uploads/20221223/ac110f88206daeab6c0cf38ebf5fe9ed.jpg" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="从零制作响应式网站—Grid布局"> </a> <dl> <dt class="lineTwoOverflow"><a href="/course/28.html" target="_blank" class="aBlack" title="从零制作响应式网站—Grid布局">从零制作响应式网站—Grid布局</a></dt> <dd class="cont1 lineTwoOverflow"> 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。 </dd> <dd class="cont2">485次学习</dd> </dl> </li> </ul> </div> <div class="rightContBox"> <div class="rightTit"> <a href="/ai.html" class="more" title="查看更多">查看更多<i class="iconfont"></i></a> <div class="tit lineOverflow">AI推荐</div> </div> <ul class="lessonRecomRList"> <li> <a href="/ai/13900.html" target="_blank" title="PubMedQA数据集详解:生物医学问答基准、功能与应用指南" class="img_box"> <img src="/uploads/20260908/6a9f83280940e7.65575695.jpg" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="PubMedQA数据集详解:生物医学问答基准、功能与应用指南" style="object-fit:cover;width:100%;height:100%;"> </a> <dl> <dt class="lineTwoOverflow"><a href="/ai/13900.html" class="aBlack" target="_blank" title="PubMedQA">PubMedQA</a></dt> <dd class="cont1 lineTwoOverflow"> 深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。 </dd> <dd class="cont2">291次使用</dd> </dl> </li> <li> <a href="/ai/13899.html" target="_blank" title="H2O EvalGPT:开源LLM大模型评估与排行榜工具" class="img_box"> <img src="/uploads/20260908/17887986376a9ee6adaf3f5.jpg" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="H2O EvalGPT:开源LLM大模型评估与排行榜工具" style="object-fit:cover;width:100%;height:100%;"> </a> <dl> <dt class="lineTwoOverflow"><a href="/ai/13899.html" class="aBlack" target="_blank" title="H2O EvalGPT">H2O EvalGPT</a></dt> <dd class="cont1 lineTwoOverflow"> H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。 </dd> <dd class="cont2">344次使用</dd> </dl> </li> <li> <a href="/ai/13898.html" target="_blank" title="LMArena是什么?伯克利AI模型评估平台使用指南与功能解析" class="img_box"> <img src="/uploads/20260908/6a9f862dbcfec7.27385604.jpg" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="LMArena是什么?伯克利AI模型评估平台使用指南与功能解析" style="object-fit:cover;width:100%;height:100%;"> </a> <dl> <dt class="lineTwoOverflow"><a href="/ai/13898.html" class="aBlack" target="_blank" title="LMArena">LMArena</a></dt> <dd class="cont1 lineTwoOverflow"> LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。 </dd> <dd class="cont2">347次使用</dd> </dl> </li> <li> <a href="/ai/13897.html" target="_blank" title="斯坦福HELM:大语言模型Holistic Evaluation整体评估框架详解" class="img_box"> <img src="/uploads/20260908/6a9f86b31ed789.06773114.jpg" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="斯坦福HELM:大语言模型Holistic Evaluation整体评估框架详解" style="object-fit:cover;width:100%;height:100%;"> </a> <dl> <dt class="lineTwoOverflow"><a href="/ai/13897.html" class="aBlack" target="_blank" title="HELM">HELM</a></dt> <dd class="cont1 lineTwoOverflow"> 深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。 </dd> <dd class="cont2">310次使用</dd> </dl> </li> <li> <a href="/ai/13896.html" target="_blank" title="MMBench详解:多模态大模型基准测试、功能特点与使用指南" class="img_box"> <img src="/uploads/20260908/6a9f86d3eed3e7.18564236.jpg" onerror="this.onerror='',this.src='/assets/images/moren/morentu.png'" alt="MMBench详解:多模态大模型基准测试、功能特点与使用指南" style="object-fit:cover;width:100%;height:100%;"> </a> <dl> <dt class="lineTwoOverflow"><a href="/ai/13896.html" class="aBlack" target="_blank" title="MMBench">MMBench</a></dt> <dd class="cont1 lineTwoOverflow"> MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。 </dd> <dd class="cont2">131次使用</dd> </dl> </li> </ul> </div> <!-- 相关文章 --> <div class="rightContBox"> <div class="rightTit"> <a href="/articlelist.html" class="more" title="查看更多">查看更多<i class="iconfont"></i></a> <div class="tit lineOverflow">相关文章</div> </div> <ul class="aboutArticleRList"> <li> <dl> <dt class="lineTwoOverflow"><a href="/article/207000.html" class="aBlack" title="JavaScript函数定义及示例详解">JavaScript函数定义及示例详解</a></dt> <dd> <span class="left">2025-05-11</span> <span class="right">502浏览</span> </dd> </dl> </li> <li> <dl> <dt class="lineTwoOverflow"><a href="/article/621422.html" class="aBlack" title="智能体安全引领产业升级——国内AI安全产品市场深度分析">智能体安全引领产业升级——国内AI安全产品市场深度分析</a></dt> <dd> <span class="left">2026-08-21</span> <span class="right">501浏览</span> </dd> </dl> </li> <li> <dl> <dt class="lineTwoOverflow"><a href="/article/619053.html" class="aBlack" title="CSS变量简化按钮悬停效果技巧">CSS变量简化按钮悬停效果技巧</a></dt> <dd> <span class="left">2026-05-31</span> <span class="right">501浏览</span> </dd> </dl> </li> <li> <dl> <dt class="lineTwoOverflow"><a href="/article/618916.html" class="aBlack" title="JavaScript符号类型详解与应用">JavaScript符号类型详解与应用</a></dt> <dd> <span class="left">2026-05-31</span> <span class="right">501浏览</span> </dd> </dl> </li> <li> <dl> <dt class="lineTwoOverflow"><a href="/article/612539.html" class="aBlack" title="HTML剪贴板复制粘贴怎么用">HTML剪贴板复制粘贴怎么用</a></dt> <dd> <span class="left">2026-05-26</span> <span class="right">501浏览</span> </dd> </dl> </li> </ul> </div> </div> </div> <script src="/assets/js/frontend/common.js"></script> </body> </html>