https://readymag.com

页面构成与技术指标

正文

308

操作候选

61

图片

92

HTML

127 KB

文案

标题字数
51
摘要字数
40偏短
H1
4
H2
7

动作

主要入口

Try Readymag

表单
0/ 9 输入
站内链接
139
站外链接
52

安全与页面元信息

HTTPS
HSTS
CSP
nosniff
viewport
图标
JSON-LD
统计
GA4 · Hotjar

构成

React / Tailwind

脚本
26 ext / 12 inline
Alt
43 missing
第三方域
8

Lighthouse

移动端模拟 · 性能评分

44 / 100

2026-09-05 · 实验室数据,非真实用户体验数据。

查看详情

移动端模拟 · 实验室数据,非真实用户体验数据
2026-09-05T04:02:03.890Z · Lighthouse 13.4.1

性能44/ 100
可访问性80/ 100
最佳实践54/ 100
SEO85/ 100
LCP · 主要内容出现41,896 ms
CLS · 布局偏移0.000
TBT · 主线程阻塞451 ms
FCP · 首次内容绘制7,698 ms
SI · 视觉加载速度16,976 ms

分数会受服务器、网络和测试环境影响,独立于品味/转化评分。诊断保留 Lighthouse 原文。

Browser errors were logged to the console

Errors logged to the console indicate unresolved problems. They can come from network request failures and other browser concerns. Learn more about this errors in console diagnostic audit

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "source": "exception",
      "description": "Event",
      "sourceLocation": {
        "url": "https://st-p.rmcdn1.net/b80cce17/dist/c/c-RIKDEPR3.js",
        "line": 0,
        "type": "source-location",
        "column": 1829,
        "urlProvider": "network"
      }
    },
    {
      "source": "network",
      "description": "Failed to load resource: net::ERR_FAILED",
      "sourceLocation": {
        "url": "https://sh-p.rmcdn.net/50dad5df6b52d70000000006/500c4501-bf6b-4de0-955d-b9e88ef00873/000001.webp?c",
        "line": 0,
        "type": "source-location",
        "column": 0,
        "urlProvider": "network"
      }
    }
  ],
  "headings": [
    {
      "key": "sourceLocation",
      "label": "Source",
      "valueType": "source-location"
    },
    {
      "key": "description",
      "label": "Description",
      "valueType": "code"
    }
  ]
}

Reduce initial server response time

Root document took 1,130 ms

Keep the server response time for the main document short because all other requests depend on it. Learn more about the Time to First Byte metric.

对应元素与资源
{
  "type": "opportunity",
  "items": [
    {
      "url": "https://readymag.com/",
      "responseTime": 1126
    }
  ],
  "headings": [
    {
      "key": "url",
      "label": "URL",
      "valueType": "url"
    },
    {
      "key": "responseTime",
      "label": "Time Spent",
      "valueType": "timespanMs"
    }
  ],
  "overallSavingsMs": 1026
}

Uses deprecated APIs

1 warning found

Deprecated APIs will eventually be removed from the browser. Learn more about deprecated APIs.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "value": "Attribution Reporting is deprecated and will be removed. See https://goo.gle/ps-status for details.",
      "source": {
        "url": "https://snap.licdn.com/li.lms-analytics/insight.old.min.js",
        "line": 0,
        "type": "source-location",
        "column": 17775,
        "urlProvider": "network"
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "url": "https://chromestatus.com/feature/6320639375966208",
            "text": "Check the feature status page for more details.",
            "type": "link"
          }
        ]
      }
    }
  ],
  "headings": [
    {
      "key": "value",
      "label": "Deprecation / Warning",
      "valueType": "text"
    },
    {
      "key": "source",
      "label": "Source",
      "valueType": "source-location"
    }
  ]
}

Uses third-party cookies

17 cookies found

Third-party cookies may be blocked in some contexts. Learn more about preparing for third-party cookie restrictions.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "url": "https://st-p.rmcdn1.net/b80cce17/dist/viewer.css",
      "name": "__cf_bm"
    },
    {
      "url": "https://assets.apollo.io/micro/website-tracker/tracker.iife.js?nocache=t8ut4s",
      "name": "__cf_bm"
    },
    {
      "url": "https://googleads.g.doubleclick.net/pagead/viewthroughconversion/963910923/?random=1788580927505&cv=11&fst=1788580927505&bg=ffffff&guid=ON&async=1&en=rm_main_scroll_3_features_expand&gtm=45be6921v880226167za200zb867722013zd867722013xec&gcd=13l3l3l3l1l1&dma=0&tag_exp=115938466~115938468~118897920~118897930~120213116~120385422~120469145~120469153&u_w=412&u_h=823&url=https%3A%2F%2Freadymag.com%2F&rcb=4&frm=0&tiba=Readymag%20%E2%80%93%20the%20design%20tool%20for%20outstanding%20websites&did=dMWZhNz&gdid=dMWZhNz&hn=www.googleadservices.com&npa=0&us_privacy=1---&pscdl=noapi&auid=55716551.1788580927&uaa=&uab=64&uafvl=Chromium%3B151.0.7922.34%7CNot%253DA%253FBrand%3B99.0.0.0&uamb=1&uam=moto%20g%20power%20(2022)&uap=Android&uapv=11.0&uaw=0&data=event%3Drm_main_scroll_3_features_expand%3Bc_id%3D1979595838.1788580927%3Brm_parameter%3D&ept=9&rfmt=3&fmt=4",
      "name": "test_cookie"
    },
    {
      "url": "https://googleads.g.doubleclick.net/pagead/viewthroughconversion/963910923/?random=1788580927937&cv=11&fst=1788580927937&bg=ffffff&guid=ON&async=1&en=ab_experiment&gtm=45be6921v880226167za200zb867722013zd867722013xec&gcd=13l3l3l3l1l1&dma=0&tag_exp=115938466~115938468~118897920~118897930~120213116~120385422~120469145~120469153&u_w=412&u_h=823&url=https%3A%2F%2Freadymag.com%2F&rcb=4&frm=0&tiba=Readymag%20%E2%80%93%20the%20design%20tool%20for%20outstanding%20websites&did=dMWZhNz&gdid=dMWZhNz&hn=www.googleadservices.com&npa=0&us_privacy=1---&pscdl=noapi&auid=55716551.1788580927&uaa=&uab=64&uafvl=Chromium%3B151.0.7922.34%7CNot%253DA%253FBrand%3B99.0.0.0&uamb=1&uam=moto%20g%20power%20(2022)&uap=Android&uapv=11.0&uaw=0&data=event%3Dab_experiment%3Bc_id%3D1979595838.1788580927%3Bexperiment_name%3Dthird_mainpage_exp%3Bgroup%3Dcontrol&ept=9&rfmt=3&fmt=4",
      "name": "IDE"
    },
    {
      "url": "https://bzrcdn.openai.com/sdk/oaiq.min.js",
      "name": "__cf_bm"
    },
    {
      "url": "https://bzrcdn.openai.com/sdk/oaiq.min.js",
      "name": "_cfuvid"
    },
    {
      "url": "https://analytics.tiktok.com/i18n/pixel/events.js?sdkid=CQMAT8BC77U3Q8QKJ06G&lib=ttq",
      "name": "_ttp"
    },
    {
      "url": "https://www.facebook.com/tr/?id=1449790745970690&ev=ViewContent&dl=https%3A%2F%2Freadymag.com%2F&rl=&if=false&ts=1788580928805&iw=false&cd[page_path]=%2F&cd[content_type]=page&sw=412&sh=823&v=2.9.393&r=stable&ec=0&o=4126&aems=0%3B0&fbp=fb.1.1788580928799.805507761337779442&ler=empty&cdl=API_unavailable&pmd[description]=Design%2C%20prototype%2C%20collaborate%2C%20publish.&plt=2201.5&iss=1&ss=%7B%22page_title%22%3A%5B%7B%22rid%22%3A%223342685695912904%22%2C%22v%22%3A%5B%22Design%20and%20launch%20outstanding%20websites%22%5D%7D%5D%2C%22image_url%22%3A%5B%7B%22rid%22%3A%221034875692846894%22%2C%22v%22%3A%5B%22https%3A%2F%2Fi-p.rmcdn.net%2F50dad5df6b52d70000000006%2F4267026%2Fimage-bace0915-e4cd-4be5-8992-d06a68285eef.png%3Fw%3D1296%26e%3Dwebp%26nll%3Dtrue%26cX%3D7%26cY%3D1%26cW%3D2036%26cH%3D1238%22%5D%7D%5D%2C%22price%22%3A%5B%7B%22rid%22%3A%224148449592133040%22%2C%22v%22%3A%5B%22sc_anonymous_idUsed%20in%20context%20with%20the%203D-view-function%20on%20the%20website.Maximum%20Storage%20Duration%3A%2010%20yearsType%3A%20HTTP%20Cookie%22%5D%7D%5D%2C%22entity_name%22%3A%5B%7B%22rid%22%3A%221627658788940081%22%2C%22v%22%3A%5B%22Readymag%22%5D%7D%5D%7D&imft=1&tz=480&it=1788580928388&coo=false&chmd=moto%20g%20power%20(2022)&chpv=11.0&chfv=undefined&expv2[0]=pl1&expv2[1]=el2&expv2[2]=bc1&expv2[3]=ra2&expv2[4]=rp2&expv2[5]=ct2&expv2[6]=hf0&expv2[7]=sd1&expv2[8]=sp1&expv2[9]=ek1&expv2[10]=pc1&expv2[11]=gs1&expv2[12]=zs1&expv2[13]=cp1&expv2[14]=es1&expv2[15]=ac1&expv2[16]=so1&expv2[17]=wc3&expv2[18]=la1&expv2[19]=sf1&expv2[20]=da1&expv2[21]=io1&expv2[22]=ae1&expv2[23]=sx1&expv2[24]=if1&expv2[25]=fd1&expv2[26]=bg3&expv2[27]=mg3&expv2[28]=kl3&expv2[29]=sg3&expv2[30]=mk3&expv2[31]=sn3&expv2[32]=ec3&expv2[33]=mp3&expv2[34]=ps3&expv2[35]=fx3&expv2[36]=vt3&expv2[37]=dp0&rqm=GET",
      "name": "fr"
    },
    {
      "url": "https://px.ads.linkedin.com/collect/?pid=4866241&fmt=gif",
      "name": "li_sugr"
    },
    {
      "url": "https://px.ads.linkedin.com/collect/?pid=4866241&fmt=gif",
      "name": "bcookie"
    },
    {
      "url": "https://px.ads.linkedin.com/collect/?pid=4866241&fmt=gif",
      "name": "lidc"
    },
    {
      "url": "https://px.ads.linkedin.com/collect/?pid=4866241&fmt=gif",
      "name": "__cf_bm"
    },
    {
      "url": "https://px.ads.linkedin.com/collect/?pid=4866241&fmt=gif&cookiesTest=true",
      "name": "UserMatchHistory"
    },
    {
      "url": "https://px.ads.linkedin.com/collect/?pid=4866241&fmt=gif&cookiesTest=true",
      "name": "AnalyticsSyncHistory"
    },
    {
      "url": "https://www.linkedin.com/px/li_sync?redirect=https%3A%2F%2Fpx.ads.linkedin.com%2Fcollect%2F%3Fpid%3D4866241%26fmt%3Dgif%26cookiesTest%3Dtrue%26liSync%3Dtrue",
      "name": "bscookie"
    },
    {
      "url": "https://bzr.openai.com/v1/sdk/events?pid=9t6gHYrFzVMMV1LWB7GPDC&st=oaiq-web&sv=0.1.41&t=1788580929865&ec=3",
      "name": "__cf_bm"
    },
    {
      "url": "https://bzr.openai.com/v1/sdk/events?pid=9t6gHYrFzVMMV1LWB7GPDC&st=oaiq-web&sv=0.1.41&t=1788580929865&ec=3",
      "name": "_cfuvid"
    }
  ],
  "headings": [
    {
      "key": "name",
      "label": "Name",
      "valueType": "text"
    },
    {
      "key": "url",
      "label": "URL",
      "valueType": "url"
    }
  ]
}

Minimize main-thread work

6.8 s

Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. Learn how to minimize main-thread work

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "group": "scriptEvaluation",
      "duration": 3397.1959999988676,
      "groupLabel": "Script Evaluation"
    },
    {
      "group": "other",
      "duration": 1924.6719999999123,
      "groupLabel": "Other"
    },
    {
      "group": "styleLayout",
      "duration": 471.3599999999997,
      "groupLabel": "Style & Layout"
    },
    {
      "group": "paintCompositeRender",
      "duration": 397.5280000000314,
      "groupLabel": "Rendering"
    },
    {
      "group": "scriptParseCompile",
      "duration": 296.02400000000006,
      "groupLabel": "Script Parsing & Compilation"
    },
    {
      "group": "parseHTML",
      "duration": 253.04800000000148,
      "groupLabel": "Parse HTML & CSS"
    },
    {
      "group": "garbageCollection",
      "duration": 46.75600000000001,
      "groupLabel": "Garbage Collection"
    }
  ],
  "headings": [
    {
      "key": "groupLabel",
      "label": "Category",
      "valueType": "text"
    },
    {
      "key": "duration",
      "label": "Time Spent",
      "valueType": "ms",
      "granularity": 1
    }
  ],
  "sortedBy": [
    "duration"
  ]
}

Reduce JavaScript execution time

3.5 s

Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. Learn how to reduce Javascript execution time.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "url": "https://st-p.rmcdn1.net/b80cce17/dist/c/c-YGAAT5ZZ.js",
      "total": 1194.4039999999848,
      "scripting": 98.50400000000015,
      "scriptParseCompile": 0.06
    },
    {
      "url": "Unattributable",
      "total": 901.5240000000063,
      "scripting": 99.16400000000063,
      "scriptParseCompile": 0
    },
    {
      "url": "https://st-p.rmcdn1.net/b80cce17/dist/c/c-2LX2IIFW.js",
      "total": 859.2960000000118,
      "scripting": 745.748000000012,
      "scriptParseCompile": 0.028
    },
    {
      "url": "https://st-p.rmcdn1.net/b80cce17/dist/c/c-7H5OSUUH.js",
      "total": 826.2319999999995,
      "scripting": 794.7479999999995,
      "scriptParseCompile": 0.028
    },
    {
      "url": "https://readymag.com/",
      "total": 727.2360000000009,
      "scripting": 129.752000000001,
      "scriptParseCompile": 15.355999999999993
    },
    {
      "url": "https://st-p.rmcdn1.net/b80cce17/dist/c/c-VWY3XCPS.js",
      "total": 418.12000000001086,
      "scripting": 323.90800000001093,
      "scriptParseCompile": 0.044
    },
    {
      "url": "https://analytics.tiktok.com/i18n/pixel/static/main.MTQyN2U3Zjc5MQ.js",
      "total": 250.58399999995817,
      "scripting": 170.86799999995816,
      "scriptParseCompile": 77.90800000000002
    },
    {
      "url": "https://consent.cookiebot.com/d4c2d48c-e2e7-4faf-94a1-c7397bef70a4/cc.js?renew=false&referer=readymag.com&dnt=false&init=false",
      "total": 239.10800000000316,
      "scripting": 81.81600000000006,
      "scriptParseCompile": 27.676
    },
    {
      "url": "https://cdn.jsdelivr.net/npm/hls.js@1.1.4/dist/hls.min.js",
      "total": 237.20800000000008,
      "scripting": 168.85600000000014,
      "scriptParseCompile": 18.811999999999998
    },
    {
      "url": "https://st-p.rmcdn1.net/b80cce17/dist/c/c-RYMD2QIX.js",
      "total": 181.26400000000015,
      "scripting": 143.69600000000045,
      "scriptParseCompile": 0.116
    },
    {
      "url": "https://www.googletagmanager.com/gtag/js?id=AW-963910923&cx=c&gtm=4e6921",
      "total": 149.02800000000133,
      "scripting": 119.08000000000133,
      "scriptParseCompile": 28.215999999999998
    },
    {
      "url": "https://connect.facebook.net/en_US/fbevents.js",
      "total": 129.06000000000077,
      "scripting": 98.29600000000075,
      "scriptParseCompile": 22.808
    },
    {
      "url": "https://www.googletagmanager.com/gtag/js?id=G-4MHCHDVPXV",
      "total": 85.57199999999983,
      "scripting": 53.84799999999982,
      "scriptParseCompile": 31.496000000000002
    },
    {
      "url": "https://connect.facebook.net/signals/config/1449790745970690?v=2.9.393&r=stable&domain=readymag.com&im=1&hme=118644ce20ff837cfc6c6ee441987e9e11b8b9fb8ec6bc04b15a3c516441ba07&ex_m=115%2C226%2C166%2C26%2C80%2C81%2C158%2C76%2C75%2C11%2C176%2C100%2C20%2C150%2C138%2C45%2C83%2C88%2C146%2C171%2C178%2C31%2C17%2C30%2C18%2C32%2C33%2C34%2C36%2C54%2C159%2C85%2C123%2C22%2C24%2C50%2C46%2C48%2C47%2C93%2C102%2C106%2C121%2C157%2C160%2C52%2C122%2C28%2C25%2C130%2C77%2C42%2C162%2C161%2C163%2C154%2C152%2C29%2C41%2C65%2C120%2C173%2C78%2C21%2C125%2C91%2C74%2C23%2C95%2C96%2C127%2C94%2C148%2C147%2C151%2C107%2C172%2C175%2C40%2C55%2C124%2C53%2C8%2C4%2C5%2C7%2C6%2C3%2C101%2C112%2C179%2C193%2C240%2C82%2C254%2C253%2C252%2C14%2C27%2C39%2C61%2C114%2C67%2C10%2C71%2C108%2C109%2C110%2C116%2C141%2C37%2C35%2C143%2C144%2C145%2C140%2C139%2C167%2C84%2C170%2C168%2C169%2C56%2C66%2C134%2C19%2C174%2C51%2C303%2C304%2C305%2C302%2C318%2C340%2C233%2C222%2C68%2C223%2C221%2C343%2C334%2C58%2C234%2C118%2C142%2C90%2C132%2C60%2C131%2C137%2C136%2C64%2C72%2C70%2C164%2C86%2C87%2C126%2C43%2C38%2C59%2C62%2C111%2C177%2C1%2C135%2C16%2C133%2C12%2C2%2C63%2C103%2C15%2C73%2C69%2C129%2C99%2C98%2C181%2C182%2C104%2C105%2C9%2C113%2C180%2C57%2C155%2C97%2C89%2C79%2C128%2C117%2C49%2C156%2C0%2C92%2C149%2C153%2C165%2C44%2C119%2C13%2C183",
      "total": 77.30799999999982,
      "scripting": 60.15599999999983,
      "scriptParseCompile": 17.036
    },
    {
      "url": "https://script.hotjar.com/modules.e762be2b6b709245aabb.js",
      "total": 67.75599999999997,
      "scripting": 51.303999999999974,
      "scriptParseCompile": 14.552000000000001
    },
    {
      "url": "https://bzrcdn.openai.com/sdk/oaiq.min.js",
      "total": 65.816,
      "scripting": 59.432,
      "scriptParseCompile": 5.736
    },
    {
      "url": "https://consent.cookiebot.com/uc.js",
      "total": 57.448000000000626,
      "scripting": 47.90800000000063,
      "scriptParseCompile": 7.4319999999999995
    }
  ],
  "summary": {
    "wastedMs": 3514.3879999999854
  },
  "headings": [
    {
      "key": "url",
      "label": "URL",
      "valueType": "url"
    },
    {
      "key": "total",
      "label": "Total CPU Time",
      "valueType": "ms",
      "granularity": 1
    },
    {
      "key": "scripting",
      "label": "Script Evaluation",
      "valueType": "ms",
      "granularity": 1
    },
    {
      "key": "scriptParseCompile",
      "label": "Script Parse",
      "valueType": "ms",
      "granularity": 1
    }
  ],
  "sortedBy": [
    "total"
  ]
}

Buttons do not have an accessible name

When a button doesn't have an accessible name, screen readers announce it as "button", making it unusable for users who rely on screen readers. Learn how to make buttons more accessible.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "node": {
        "lhId": "1-0-BUTTON",
        "path": "2,HTML,1,BODY,20,DIV,0,DIV,0,DIV,1,BUTTON",
        "type": "node",
        "snippet": "<button class=\"css-189ey7d\">",
        "selector": "div#rm-header-mobile-portal > div.css-xkycqq > div.css-14bznml > button.css-189ey7d",
        "nodeLabel": "div#rm-header-mobile-portal > div.css-xkycqq > div.css-14bznml > button.css-189ey7d",
        "explanation": "Fix any of the following:\n  Element does not have inner text that is visible to screen readers\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element does not have an implicit (wrapped) <label>\n  Element does not have an explicit <label>\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 6,
          "left": 358,
          "right": 406,
          "width": 48,
          "bottom": 54,
          "height": 48
        }
      }
    }
  ],
  "headings": [
    {
      "key": "node",
      "label": "Failing Elements",
      "valueType": "node",
      "subItemsHeading": {
        "key": "relatedNode",
        "valueType": "node"
      }
    }
  ],
  "debugData": {
    "tags": [
      "cat.name-role-value",
      "wcag2a",
      "wcag412",
      "section508",
      "section508.22.a",
      "TTv5",
      "TT6.a",
      "EN-301-549",
      "EN-9.4.1.2",
      "ACT",
      "RGAAv4",
      "RGAA-11.9.1"
    ],
    "type": "debugdata",
    "impact": "critical"
  }
}

Background and foreground colors do not have a sufficient contrast ratio.

Low-contrast text is difficult or impossible for many users to read. Learn how to provide sufficient color contrast.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "node": {
        "lhId": "1-1-DIV",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,3,DIV,0,A,0,DIV,0,DIV,1,DIV",
        "type": "node",
        "snippet": "<div class=\"text\" style=\"display: inline-block; width: auto; padding-left: 0px; text-indent: 0px;\">",
        "selector": "a.external-link > div.rmwidget > div.common-button > div.text",
        "nodeLabel": "Try Readymag",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 3.28 (foreground color: #ffffff, background color: #ff5000, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 198,
          "left": 43,
          "right": 75,
          "width": 32,
          "bottom": 210,
          "height": 13
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-2-DIV",
              "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,3,DIV,0,A,0,DIV,0,DIV",
              "type": "node",
              "snippet": "<div class=\"common-button\" data-id=\"68dd6356c1d17c5bd98dd021\" style=\"flex-direction: row;\">",
              "selector": "div.animation-container > a.external-link > div.rmwidget > div.common-button",
              "nodeLabel": "Try Readymag",
              "boundingRect": {
                "top": 198,
                "left": 34,
                "right": 84,
                "width": 50,
                "bottom": 210,
                "height": 13
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "1-3-DIV",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,27,A,0,DIV,0,DIV,1,DIV",
        "type": "node",
        "snippet": "<div class=\"text\" style=\"display: inline-block; width: auto; padding-left: 0px;\">",
        "selector": "a.external-link > div.rmwidget > div.common-button > div.text",
        "nodeLabel": "Editorials",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 1.82 (foreground color: #ffffff, background color: #b2cc00, font size: 13.5pt (18px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 963,
          "left": 192,
          "right": 220,
          "width": 28,
          "bottom": 976,
          "height": 13
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-4-DIV",
              "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,27,A,0,DIV,0,DIV",
              "type": "node",
              "snippet": "<div class=\"common-button\" data-id=\"68dd634fcc0fcc084072e52b\" style=\"flex-direction: row;\">",
              "selector": "div.page-content-container > a.external-link > div.rmwidget > div.common-button",
              "nodeLabel": "Editorials",
              "boundingRect": {
                "top": 963,
                "left": 150,
                "right": 262,
                "width": 111,
                "bottom": 976,
                "height": 13
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "1-5-DIV",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,28,A,0,DIV,0,DIV,1,DIV",
        "type": "node",
        "snippet": "<div class=\"text\" style=\"display: inline-block; width: auto; padding-left: 0px;\">",
        "selector": "a.external-link > div.rmwidget > div.common-button > div.text",
        "nodeLabel": "Presentations",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 1.69 (foreground color: #ffffff, background color: #ffbb00, font size: 13.5pt (18px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 1052,
          "left": 187,
          "right": 226,
          "width": 39,
          "bottom": 1065,
          "height": 13
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-6-DIV",
              "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,28,A,0,DIV,0,DIV",
              "type": "node",
              "snippet": "<div class=\"common-button\" data-id=\"68dd634e657f19401c97630c\" style=\"flex-direction: row;\">",
              "selector": "div.page-content-container > a.external-link > div.rmwidget > div.common-button",
              "nodeLabel": "Presentations",
              "boundingRect": {
                "top": 1052,
                "left": 151,
                "right": 262,
                "width": 111,
                "bottom": 1065,
                "height": 13
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "1-7-DIV",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,29,A,0,DIV,0,DIV,1,DIV",
        "type": "node",
        "snippet": "<div class=\"text\" style=\"display: inline-block; width: auto; padding-left: 0px;\">",
        "selector": "a.external-link > div.rmwidget > div.common-button > div.text",
        "nodeLabel": "Design studios",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 3.28 (foreground color: #ffffff, background color: #ff5000, font size: 13.5pt (18px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 1052,
          "left": 67,
          "right": 111,
          "width": 44,
          "bottom": 1065,
          "height": 13
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-8-DIV",
              "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,29,A,0,DIV,0,DIV",
              "type": "node",
              "snippet": "<div class=\"common-button\" data-id=\"68dd634fb8a687e60291fd6f\" style=\"flex-direction: row;\">",
              "selector": "div.page-content-container > a.external-link > div.rmwidget > div.common-button",
              "nodeLabel": "Design studios",
              "boundingRect": {
                "top": 1052,
                "left": 33,
                "right": 144,
                "width": 111,
                "bottom": 1065,
                "height": 13
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "1-9-DIV",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,30,A,0,DIV,0,DIV,1,DIV",
        "type": "node",
        "snippet": "<div class=\"text\" style=\"display: inline-block; width: auto; padding-left: 0px;\">",
        "selector": "a.external-link > div.rmwidget > div.common-button > div.text",
        "nodeLabel": "Portfolios",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 3.79 (foreground color: #ffffff, background color: #0080ff, font size: 13.5pt (18px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 1052,
          "left": 310,
          "right": 337,
          "width": 26,
          "bottom": 1065,
          "height": 13
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-10-DIV",
              "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,30,A,0,DIV,0,DIV",
              "type": "node",
              "snippet": "<div class=\"common-button\" data-id=\"68dd634f3ebb92539ce08d3d\" style=\"flex-direction: row;\">",
              "selector": "div.page-content-container > a.external-link > div.rmwidget > div.common-button",
              "nodeLabel": "Portfolios",
              "boundingRect": {
                "top": 1052,
                "left": 268,
                "right": 379,
                "width": 111,
                "bottom": 1065,
                "height": 13
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "1-11-SPAN",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,64,DIV,0,DIV,0,DIV,1,DIV,0,DIV,0,DIV,0,DIV,0,SPAN",
        "type": "node",
        "snippet": "<span class=\"css-dncy8p\">",
        "selector": "div.css-6i6oz5 > div.css-1df8pl9 > div.css-1uq1ec4 > span.css-dncy8p",
        "nodeLabel": "company",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 3.73 (foreground color: #808080, background color: #282828, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 1147,
          "left": 20,
          "right": 91,
          "width": 71,
          "bottom": 1163,
          "height": 16
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-12-DIV",
              "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,64,DIV,0,DIV,0,DIV",
              "type": "node",
              "snippet": "<div class=\"css-xrdq0d\">",
              "selector": "div.page-content-container > div.rmwidget > div > div.css-xrdq0d",
              "nodeLabel": "company\nabout\ncareers\nreviews\nterms of service\nprivacy policy\ncookie policy\npro…",
              "boundingRect": {
                "top": 1085,
                "left": 0,
                "right": 412,
                "width": 412,
                "bottom": 1485,
                "height": 400
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "1-13-SPAN",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,64,DIV,0,DIV,0,DIV,1,DIV,0,DIV,1,DIV,0,DIV,0,SPAN",
        "type": "node",
        "snippet": "<span class=\"css-dncy8p\">",
        "selector": "div.css-6i6oz5 > div.css-1df8pl9 > div.css-1uq1ec4 > span.css-dncy8p",
        "nodeLabel": "product",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 3.73 (foreground color: #808080, background color: #282828, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 1147,
          "left": 108,
          "right": 169,
          "width": 61,
          "bottom": 1163,
          "height": 16
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-12-DIV",
              "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,64,DIV,0,DIV,0,DIV",
              "type": "node",
              "snippet": "<div class=\"css-xrdq0d\">",
              "selector": "div.page-content-container > div.rmwidget > div > div.css-xrdq0d",
              "nodeLabel": "company\nabout\ncareers\nreviews\nterms of service\nprivacy policy\ncookie policy\npro…",
              "boundingRect": {
                "top": 1085,
                "left": 0,
                "right": 412,
                "width": 412,
                "bottom": 1485,
                "height": 400
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "1-14-SPAN",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,64,DIV,0,DIV,0,DIV,1,DIV,0,DIV,2,DIV,0,DIV,0,SPAN",
        "type": "node",
        "snippet": "<span class=\"css-dncy8p\">",
        "selector": "div.css-6i6oz5 > div.css-1df8pl9 > div.css-1uq1ec4 > span.css-dncy8p",
        "nodeLabel": "case studies",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 3.73 (foreground color: #808080, background color: #282828, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 1147,
          "left": 214,
          "right": 308,
          "width": 94,
          "bottom": 1163,
          "height": 16
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-12-DIV",
              "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,64,DIV,0,DIV,0,DIV",
              "type": "node",
              "snippet": "<div class=\"css-xrdq0d\">",
              "selector": "div.page-content-container > div.rmwidget > div > div.css-xrdq0d",
              "nodeLabel": "company\nabout\ncareers\nreviews\nterms of service\nprivacy policy\ncookie policy\npro…",
              "boundingRect": {
                "top": 1085,
                "left": 0,
                "right": 412,
                "width": 412,
                "bottom": 1485,
                "height": 400
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "1-15-SPAN",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,64,DIV,0,DIV,0,DIV,1,DIV,0,DIV,3,DIV,0,DIV,0,SPAN",
        "type": "node",
        "snippet": "<span class=\"css-dncy8p\">",
        "selector": "div.css-6i6oz5 > div.css-1df8pl9 > div.css-1uq1ec4 > span.css-dncy8p",
        "nodeLabel": "editorials",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 3.73 (foreground color: #808080, background color: #282828, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 1147,
          "left": 348,
          "right": 419,
          "width": 71,
          "bottom": 1163,
          "height": 16
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-12-DIV",
              "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,64,DIV,0,DIV,0,DIV",
              "type": "node",
              "snippet": "<div class=\"css-xrdq0d\">",
              "selector": "div.page-content-container > div.rmwidget > div > div.css-xrdq0d",
              "nodeLabel": "company\nabout\ncareers\nreviews\nterms of service\nprivacy policy\ncookie policy\npro…",
              "boundingRect": {
                "top": 1085,
                "left": 0,
                "right": 412,
                "width": 412,
                "bottom": 1485,
                "height": 400
              }
            }
          }
        ]
      }
    },
    {
      "node": {
        "lhId": "1-16-SPAN",
        "path": "2,HTML,1,BODY,20,DIV,0,DIV,0,DIV,0,A,0,SPAN",
        "type": "node",
        "snippet": "<span class=\"css-skthof\">",
        "selector": "div.css-xkycqq > div.css-14bznml > a.css-orlodg > span.css-skthof",
        "nodeLabel": "Sign up",
        "explanation": "Fix any of the following:\n  Element has insufficient color contrast of 3.63 (foreground color: #ffffff, background color: #ec520b, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1",
        "boundingRect": {
          "top": 20,
          "left": 282,
          "right": 334,
          "width": 52,
          "bottom": 40,
          "height": 20
        }
      },
      "subItems": {
        "type": "subitems",
        "items": [
          {
            "relatedNode": {
              "lhId": "1-17-A",
              "path": "2,HTML,1,BODY,20,DIV,0,DIV,0,DIV,0,A",
              "type": "node",
              "snippet": "<a href=\"https://readymag.com/auth/join\" class=\"css-orlodg\">",
              "selector": "div#rm-header-mobile-portal > div.css-xkycqq > div.css-14bznml > a.css-orlodg",
              "nodeLabel": "Sign up",
              "boundingRect": {
                "top": 6,
                "left": 258,
                "right": 358,
                "width": 100,
                "bottom": 54,
                "height": 48
              }
            }
          }
        ]
      }
    }
  ],
  "headings": [
    {
      "key": "node",
      "label": "Failing Elements",
      "valueType": "node",
      "subItemsHeading": {
        "key": "relatedNode",
        "valueType": "node"
      }
    }
  ],
  "debugData": {
    "tags": [
      "cat.color",
      "wcag2aa",
      "wcag143",
      "TTv5",
      "TT13.c",
      "EN-301-549",
      "EN-9.1.4.3",
      "ACT",
      "RGAAv4",
      "RGAA-3.2.1"
    ],
    "type": "debugdata",
    "impact": "serious"
  }
}

`<html>` element does not have a `[lang]` attribute

If a page doesn't specify a `lang` attribute, a screen reader assumes that the page is in the default language that the user chose when setting up the screen reader. If the page isn't actually in the default language, then the screen reader might not announce the page's text correctly. Learn more about the `lang` attribute.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "node": {
        "lhId": "1-18-HTML",
        "path": "2,HTML",
        "type": "node",
        "snippet": "<html class=\"js flexbox flexboxlegacy canvas canvastext webgl touch geolocation postmes…\" style=\"--min-desktop-width: 769px;\">",
        "selector": "html.js",
        "nodeLabel": "html.js",
        "explanation": "Fix any of the following:\n  The <html> element does not have a lang attribute",
        "boundingRect": {
          "top": 0,
          "left": 0,
          "right": 412,
          "width": 412,
          "bottom": 823,
          "height": 823
        }
      }
    }
  ],
  "headings": [
    {
      "key": "node",
      "label": "Failing Elements",
      "valueType": "node",
      "subItemsHeading": {
        "key": "relatedNode",
        "valueType": "node"
      }
    }
  ],
  "debugData": {
    "tags": [
      "cat.language",
      "wcag2a",
      "wcag311",
      "TTv5",
      "TT11.a",
      "EN-301-549",
      "EN-9.3.1.1",
      "ACT",
      "RGAAv4",
      "RGAA-8.3.1"
    ],
    "type": "debugdata",
    "impact": "serious"
  }
}

Image elements do not have `[alt]` attributes

Informative elements should aim for short, descriptive alternate text. Decorative elements can be ignored with an empty alt attribute. Learn more about the `alt` attribute.

对应元素与资源
{
  "type": "table",
  "items": [
    {
      "node": {
        "lhId": "1-19-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,0,DIV,0,DIV,1,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-bace0915-e4cd…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-bace0915-e4cd…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": -41,
          "left": -275,
          "right": -130,
          "width": 145,
          "bottom": 47,
          "height": 88
        }
      }
    },
    {
      "node": {
        "lhId": "1-20-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,0,DIV,0,DIV,2,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-1957a8d5-7fc8…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-1957a8d5-7fc8…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": -41,
          "left": -124,
          "right": 21,
          "width": 145,
          "bottom": 47,
          "height": 88
        }
      }
    },
    {
      "node": {
        "lhId": "1-21-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,0,DIV,0,DIV,3,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-ad491d0d-a48b…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-ad491d0d-a48b…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": -41,
          "left": 26,
          "right": 171,
          "width": 145,
          "bottom": 47,
          "height": 88
        }
      }
    },
    {
      "node": {
        "lhId": "1-22-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,0,DIV,0,DIV,4,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-a06a6882-eebe…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-a06a6882-eebe…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": -41,
          "left": 177,
          "right": 322,
          "width": 145,
          "bottom": 47,
          "height": 88
        }
      }
    },
    {
      "node": {
        "lhId": "1-23-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,0,DIV,0,DIV,5,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-1957a8d5-7fc8…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-1957a8d5-7fc8…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": -41,
          "left": 478,
          "right": 623,
          "width": 145,
          "bottom": 47,
          "height": 88
        }
      }
    },
    {
      "node": {
        "lhId": "1-24-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,0,DIV,0,DIV,6,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-ad491d0d-a48b…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-ad491d0d-a48b…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": -41,
          "left": 628,
          "right": 773,
          "width": 145,
          "bottom": 47,
          "height": 88
        }
      }
    },
    {
      "node": {
        "lhId": "1-25-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,0,DIV,0,DIV,7,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-a06a6882-eebe…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-a06a6882-eebe…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": -41,
          "left": 779,
          "right": 924,
          "width": 145,
          "bottom": 47,
          "height": 88
        }
      }
    },
    {
      "node": {
        "lhId": "1-26-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,0,DIV,0,DIV,8,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-bace0915-e4cd…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-bace0915-e4cd…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": -41,
          "left": 327,
          "right": 472,
          "width": 145,
          "bottom": 47,
          "height": 88
        }
      }
    },
    {
      "node": {
        "lhId": "1-27-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,1,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-a579a6bd-f09c…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-a579a6bd-f09c…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": -219,
          "right": -112,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-28-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,2,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-124e4676-8ee6…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-124e4676-8ee6…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": 3,
          "right": 110,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-29-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,3,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-94e40677-411c…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-94e40677-411c…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": 114,
          "right": 221,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-30-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,4,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-f3faea49-2d1d…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-f3faea49-2d1d…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": 226,
          "right": 332,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-31-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,5,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-009b03ba-f433…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-009b03ba-f433…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": 337,
          "right": 443,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-32-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,6,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-c182519e-a81f…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-c182519e-a81f…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": -108,
          "right": -1,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-33-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,7,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-a579a6bd-f09c…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-a579a6bd-f09c…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": 447,
          "right": 553,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-34-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,8,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-124e4676-8ee6…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-124e4676-8ee6…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": 669,
          "right": 776,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-35-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,9,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-94e40677-411c…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-94e40677-411c…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": 780,
          "right": 887,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-36-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,10,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-ccba9d4e-e8de…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-ccba9d4e-e8de…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": 891,
          "right": 998,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-37-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,11,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-009b03ba-f433…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-009b03ba-f433…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": 1002,
          "right": 1109,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-38-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,1,DIV,0,DIV,12,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-c182519e-a81f…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-c182519e-a81f…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.animation-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 52,
          "left": 558,
          "right": 664,
          "width": 106,
          "bottom": 116,
          "height": 64
        }
      }
    },
    {
      "node": {
        "lhId": "1-39-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,1,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-109139a7-90be…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-109139a7-90be…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": -372,
          "right": -292,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-40-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,2,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-7d18a54c-aa05…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-7d18a54c-aa05…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": -287,
          "right": -206,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-41-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,3,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-49ec59de-177c…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-49ec59de-177c…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": -201,
          "right": -121,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-42-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,4,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-be6e185a-5eb9…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-be6e185a-5eb9…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": -116,
          "right": -36,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-43-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,5,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-4a5f246a-4497…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-4a5f246a-4497…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": -31,
          "right": 50,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-44-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,6,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-31d4ade9-63e4…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-31d4ade9-63e4…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": 54,
          "right": 135,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-45-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,7,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-db1b910d-9d6c…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-db1b910d-9d6c…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": 140,
          "right": 220,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-46-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,8,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-63fd1c2f-b8c5…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-63fd1c2f-b8c5…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": 225,
          "right": 306,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-47-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,9,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-7d18a54c-aa05…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-7d18a54c-aa05…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": 396,
          "right": 476,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-48-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,10,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-49ec59de-177c…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-49ec59de-177c…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": 481,
          "right": 562,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-49-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,11,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-be6e185a-5eb9…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-be6e185a-5eb9…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": 567,
          "right": 647,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-50-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,12,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-4a5f246a-4497…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-4a5f246a-4497…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": 652,
          "right": 732,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-51-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,13,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-31d4ade9-63e4…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-31d4ade9-63e4…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": 737,
          "right": 818,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-52-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,14,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-db1b910d-9d6c…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-db1b910d-9d6c…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": 823,
          "right": 903,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-53-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,15,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-63fd1c2f-b8c5…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/5725690/image-63fd1c2f-b8c5…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": 908,
          "right": 988,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-54-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,2,DIV,16,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-109139a7-90be…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-109139a7-90be…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 121,
          "left": 311,
          "right": 391,
          "width": 80,
          "bottom": 169,
          "height": 49
        }
      }
    },
    {
      "node": {
        "lhId": "1-55-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,7,DIV,9,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/56176d7d4ff02cd032e50c21/3310914/upload-b84683be-714…\" src=\"https://i-p.rmcdn.net/56176d7d4ff02cd032e50c21/3310914/upload-b84683be-714…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 1138,
          "left": -10,
          "right": 59,
          "width": 69,
          "bottom": 1145,
          "height": 8
        }
      }
    },
    {
      "node": {
        "lhId": "1-56-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,7,DIV,10,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/56176d7d4ff02cd032e50c21/3310914/upload-b84683be-714…\" src=\"https://i-p.rmcdn.net/56176d7d4ff02cd032e50c21/3310914/upload-b84683be-714…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.page-content-container > div.animation-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 1138,
          "left": 618,
          "right": 687,
          "width": 69,
          "bottom": 1145,
          "height": 8
        }
      }
    },
    {
      "node": {
        "lhId": "1-57-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,37,DIV,0,IMG",
        "type": "node",
        "snippet": "<img src=\"https://i-p.rmcdn.net/6567170681594e0021e2e27e/5723109/image-d792666e-ced3…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.content-bounds > div.page-content-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.content-bounds > div.page-content-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 136,
          "left": -2,
          "right": 412,
          "width": 414,
          "bottom": 181,
          "height": 45
        }
      }
    },
    {
      "node": {
        "lhId": "1-58-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,44,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-5fdeab48-4eba…\" src=\"https://i-p.rmcdn.net/50dad5df6b52d70000000006/4267026/image-5fdeab48-4eba…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.content-bounds > div.page-content-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.content-bounds > div.page-content-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 419,
          "left": 218,
          "right": 351,
          "width": 133,
          "bottom": 502,
          "height": 83
        }
      }
    },
    {
      "node": {
        "lhId": "1-59-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,47,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/56176d7d4ff02cd032e50c21/4208284/image-c15b50bc-4fd1…\" src=\"https://i-p.rmcdn.net/56176d7d4ff02cd032e50c21/4208284/image-c15b50bc-4fd1…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.content-bounds > div.page-content-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.content-bounds > div.page-content-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 550,
          "left": 33,
          "right": 379,
          "width": 345,
          "bottom": 719,
          "height": 169
        }
      }
    },
    {
      "node": {
        "lhId": "1-60-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,48,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/56176d7d4ff02cd032e50c21/4208284/image-c59da531-774f…\" src=\"https://i-p.rmcdn.net/56176d7d4ff02cd032e50c21/4208284/image-c59da531-774f…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.content-bounds > div.page-content-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.content-bounds > div.page-content-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 550,
          "left": 33,
          "right": 379,
          "width": 345,
          "bottom": 719,
          "height": 169
        }
      }
    },
    {
      "node": {
        "lhId": "1-61-IMG",
        "path": "2,HTML,1,BODY,9,DIV,1,MAIN,0,DIV,0,DIV,1,ARTICLE,4,DIV,0,DIV,0,DIV,49,DIV,0,IMG",
        "type": "node",
        "snippet": "<img srcset=\"https://i-p.rmcdn.net/56176d7d4ff02cd032e50c21/4208284/image-602de633-9eed…\" src=\"https://i-p.rmcdn.net/56176d7d4ff02cd032e50c21/4208284/image-602de633-9eed…\" class=\"viewable\" style=\"opacity: 1;\">",
        "selector": "div.content-bounds > div.page-content-container > div.rmwidget > img.viewable",
        "nodeLabel": "div.content-bounds > div.page-content-container > div.rmwidget > img.viewable",
        "explanation": "Fix any of the following:\n  Element does not have an alt attribute\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\"",
        "boundingRect": {
          "top": 550,
          "left": 33,
          "right": 379,
          "width": 345,
          "bottom": 719,
          "height": 169
        }
      }
    }
  ],
  "headings": [
    {
      "key": "node",
      "label": "Failing Elements",
      "valueType": "node",
      "subItemsHeading": {
        "key": "relatedNode",
        "valueType": "node"
      }
    }
  ],
  "debugData": {
    "tags": [
      "cat.text-alternatives",
      "wcag2a",
      "wcag111",
      "section508",
      "section508.22.a",
      "TTv5",
      "TT7.a",
      "TT7.b",
      "EN-301-549",
      "EN-9.1.1.1",
      "ACT",
      "RGAAv4",
      "RGAA-1.1.1"
    ],
    "type": "debugdata",
    "impact": "critical"
  }
}
测试环境与原始指标
{
  "finalUrl": "https://readymag.com/",
  "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/151.0.0.0 Safari/537.36",
  "formFactor": "mobile",
  "throttlingMethod": "simulate",
  "throttling": {
    "rttMs": 150,
    "throughputKbps": 1638.4,
    "requestLatencyMs": 562.5,
    "uploadThroughputKbps": 675,
    "cpuSlowdownMultiplier": 4,
    "downloadThroughputKbps": 1474.5600000000002
  },
  "metrics": [
    {
      "id": "largest-contentful-paint",
      "unit": "millisecond",
      "value": 41895.685999999994
    },
    {
      "id": "cumulative-layout-shift",
      "unit": "unitless",
      "value": 0
    },
    {
      "id": "total-blocking-time",
      "unit": "millisecond",
      "value": 451
    },
    {
      "id": "first-contentful-paint",
      "unit": "millisecond",
      "value": 7698.1860000000015
    },
    {
      "id": "speed-index",
      "unit": "millisecond",
      "value": 16976.14595019431
    }
  ]
}

01 / 值得借鉴

好设计,具体好在哪

作品直接解释自由度

同一首屏同时出现摄影、粗大排字和抽象图形,展示工具支持不同风格的结果。

行动色避开作品噪声

橙色试用按钮放在干净的白色文字区,与上方复杂作品保持清晰分离。

02 / 下一步

值得继续打磨的地方

  1. 01

    修正手机标题与演示区裁切

    390px 快照中主标题和后续演示区右侧被截断,降低内容完整性。

    让标题正常换行,并为演示模块设置移动端宽度与裁切规则;在390px核对关键文字不超出屏幕。

03 / 设计语言

把气质拆成可复用的参数

色彩

背景

#ffffff

文字

#000000

表面

#ffffff

字体与尺度

标题字体
custom_37866
正文字体
Ubuntu
标题 / 正文
40px / 16px

间距与形状

区块间距
0px
组件内距
0px
卡片圆角
0px
按钮圆角
200px

参数来自页面元素采样,空值表示未取得;不将单个元素的参数当作全站规范。

04 / 检查依据

观察与实测依据

数据来自同次页面采集;字体、圆角和间距为具体元素采样,不代表全站唯一设计规范。空值为未取得。HTML 为源码体积,不是压缩传输量;脚本数为 DOM 标签数,不是请求数。

品味1 项观察

修正手机标题与演示区裁切

390px 快照中主标题和后续演示区右侧被截断,降低内容完整性。

让标题正常换行,并为演示模块设置移动端宽度与裁切规则;在390px核对关键文字不超出屏幕。

mobile.png: headline and demonstration clipped at right
上线1 项观察

没有 Referrer-Policy

默认 referrer 可能把站内路径和查询串漏给第三方。

设置 Referrer-Policy: strict-origin-when-cross-origin。

referrer-policy missing
链接分享预览

05 / 开始动手

把下一步,交给你的 AI

优化指令用于调整这个页面;设计指令用于借鉴它的视觉语言。「做同款」会附带截图与实施步骤。复制后粘贴到你的代码助手中。

查看完整指令
请基于 https://readymag.com 的 2026-09-05T03:22:35.584Z 页面快照优化当前项目。先确认当前实现与快照差异,不要把已变化的内容重新改回旧版。

设计基线
首屏先铺多行作品缩略图,胶囊导航浮在画面上,白色渐隐区承接主标题与橙色试用按钮;向下通过工作流、协作、互动和扩展能力模块解释工具。手机保留作品密度,但内容宽度需要独立适配。借鉴拼贴的节奏与控制层的克制,不复制其它设计师作品。
{
  "colors": [
    {
      "role": "bg",
      "hex": "#ffffff"
    },
    {
      "role": "ink",
      "hex": "#000000"
    },
    {
      "role": "surface",
      "hex": "#ffffff"
    }
  ],
  "fonts": {
    "body": "Ubuntu",
    "display": "custom_37866",
    "stack": [
      "-apple-system",
      "custom_37866"
    ]
  },
  "radius": {
    "button": "200px",
    "card": "0px",
    "field": ""
  },
  "space": {
    "section": "0px",
    "card": "0px"
  },
  "type": {
    "h1": "40px",
    "body": "16px",
    "weight": "400",
    "lineHeight": "16px",
    "letterSpacing": "-2px"
  }
}
数据来自同次页面采集;字体、圆角和间距为具体元素采样,不代表全站唯一设计规范。空值为未取得。HTML 为源码体积,不是压缩传输量;脚本数为 DOM 标签数,不是请求数。

执行事项
1. 修正手机标题与演示区裁切
让标题正常换行,并为演示模块设置移动端宽度与裁切规则;在390px核对关键文字不超出屏幕。
依据: mobile.png: headline and demonstration clipped at right

2. 没有 Referrer-Policy
设置 Referrer-Policy: strict-origin-when-cross-origin。
依据: referrer-policy missing

验收
- 在 1440×900 和 390×844 分别核对文字、布局和主要操作“Try Readymag”。
- 保留已有品牌、登录和业务链路,不从静态截图推断交互故障。
- 只修复有证据的项;涉及安全响应头时先用报告模式验证现有资源及认证兼容性。
- 对比修改前后的截图,并执行相关功能测试。不要声称未经测试的功能已通过。