First identify what is scrolling. Playwright’s fullPage: true captures the document’s full scrollable page; it does not expand a nested overflow: auto panel. For the viewport as a user sees it, omit fullPage. For content inside a scrolling panel, capture the panel or scroll it to the desired position first.
Why the scrollbar appears in an unexpected place
“Wrong place” can mean several different things: the document scrollbar is absent from a tall full-page image, a nested panel is cropped, a fixed or sticky element looks unusual in a tall image, or CSS keeps the page constrained to the viewport. These cases need different capture methods. Playwright documents full-page screenshots as captures of the full scrollable page, not as a series of viewport images that preserve the viewport scrollbar in the final image (Playwright screenshot guide).
A viewport screenshot and a full-page screenshot have different geometry. A viewport capture shows the current visible area; content beyond it is omitted. A full-page capture produces a tall image of the document. That difference can change whether a scrollbar is visible and where it appears.
Choose the capture that matches what you need
| Goal | Capture | Tradeoff |
|---|---|---|
| Show the page as it appears at one moment, including its viewport scrollbar state | page.screenshot() |
Preserves viewport geometry; content outside the viewport is not included. |
| Archive or compare the whole document | page.screenshot({ fullPage: true }) |
Creates a tall document image; it does not expand nested scroll areas, and its scrollbar may not look like a viewport capture. |
| Capture content inside a scrolling panel | locator.screenshot() on the panel |
Targets the element; verify that the desired scroll position and represented dimensions are right for your use. |
| Investigate a viewport-sensitive layout | Set the intended viewport before navigation; optionally test a taller viewport | Can reveal CSS assumptions, but changing the viewport changes responsive layout and may not represent the target device. |
Diagnose the scroll owner before changing code
- Check the screenshot mode. If you want the current user-visible view, capture without
fullPage. If you want a tall document image, usefullPage: true. Do not expect the latter to preserve the viewport’s scrollbar presentation. - Find what actually scrolls. In the page, inspect
document.scrollingElementand the elements that contain the relevant content. Look for fixed-height wrappers andoverflow: autooroverflow: scroll. A nested scroller does not become part of the document’s full-page expansion. - Check the layout rules. Inspect viewport-relative heights such as
100vh, fixed positioning, and absolutely positioned content. If the desired content is not laid out below the document fold, full-page capture cannot reveal it merely by making the image taller. - Set the viewport before navigation when responsive CSS matters. Playwright’s Page API recommends setting viewport size before navigation because many sites do not expect phones to change size. Changing viewport size also resets the screen size. Create the browser context with the intended viewport and screen dimensions, or set the viewport before
goto(Playwright Page API).
Capture the viewport, document, or inner panel
Keep the viewport scrollbar and geometry
For the normal visible view, omit fullPage:
await page.screenshot({ path: 'view.png' });
This captures the current viewport. It will not include content outside the viewport.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Fix the driver behind crashes, sound loss and screen glitches3Clear out junk files and repair common Windows errorsCapture the full document
For a tall screenshot of the document, use:
await page.screenshot({ path: 'full.png', fullPage: true });
This does not expand every nested scroller. If the page uses viewport-relative sizing, a taller screenshot does not necessarily make the page reflow as if it were a taller viewport. Playwright collaborator Kyle Kang explained in a related issue: “Playwright does not change the page layout, so if the content you would like to see on the screenshot does not appear below the fold, there is not much we can do.” (Playwright issue discussion.)
#1 Best Overall
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
Capture a scrolling element
If content lives in a panel, target that element:
await page.locator('.scroll-panel').screenshot({ path: 'panel.png' });
To show a particular part of the panel, scroll it to the required position before capturing. Confirm the resulting screenshot represents the intended area; element capture is not the same as expanding the panel’s entire scrollable contents.
Playwright collaborator Dmitry Gozman summarized the distinction in a discussion of non-body scrollable content: “Full page screenshots do not expand any scrollable container in the page. Instead, they render the full scrollable content of the document itself.” He added that the container itself can be screenshotted (Playwright issue discussion).
Set a reproducible viewport for responsive pages
When a layout depends on viewport dimensions, set them before loading the page. For example, configure the browser context with the dimensions under test, then navigate and capture. Avoid resizing only after navigation if you need a faithful responsive state: the page may have initialized scripts or layout assumptions using the earlier dimensions. A larger viewport is useful as a diagnostic experiment, but it changes responsive behavior and is not automatically the correct screenshot for your target.
Free tools Windows power users keep installed
One-click scans. No signup required.
Rank #2
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
Make visual screenshot tests consistent
Playwright’s toHaveScreenshot() supports page screenshot assertions and accepts fullPage. Playwright says it waits for two consecutive screenshots to match before comparing the last capture with the expectation (Page assertions API). Keep the screenshot mode, viewport, browser, and page state stable between runs. Otherwise, a scrollbar or layout change may reflect different capture conditions rather than an application regression.
Troubleshoot common scrollbar symptoms
The document scrollbar is missing in a full-page image
First determine whether you need a viewport screenshot or a tall document image. A full-page image does not have the same viewport geometry, so an absent or differently placed scrollbar is not by itself proof of a regression. Historical reports describe this symptom on specific setups, including Playwright 1.50.1 on Windows 11 and Playwright 1.42.0 with .NET 8 on Windows and Chrome; those reports do not establish behavior for every current browser, operating system, or release (Playwright issue discussion).
The inner panel is cropped or still shows only its viewport
That panel is a separate scroll owner. Capture the panel with a locator, or scroll the panel to the desired position and capture the viewport. Do not expect fullPage to enlarge it.
Rank #3
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
The content does not extend below the fold
Inspect CSS constraints such as height: 100vh and the element that owns overflow. Try a taller viewport only to test whether the layout depends on viewport height. If the desired content is not laid out below the fold, full-page capture alone will not create it.
The screenshot changes after setting the viewport
Viewport changes can alter responsive CSS and reset screen dimensions. Set the intended viewport and screen before navigation, then keep them fixed in comparisons.
The cause is still unclear
Reduce the page to a minimal reproducible example and record the exact screenshot call, Playwright version, browser, operating system, and relevant CSS. Those details distinguish a capture-mode mismatch from an inner scroller or viewport-dependent layout.
Rank #4
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
Or skip the browser setup
ScreenshotNeo is a website screenshot API and MCP server. One GET request can return a screenshot or PDF; its cleanup steps accept cookie and consent banners like a visitor and remove 60+ known consent platforms, newsletter popups, and chat widgets, with each step configurable.
For example, this cURL request captures a URL. See the ScreenshotNeo documentation for API details and options.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minutecurl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
Bot checks, blank pages, timeouts, failed loads, and cache hits are not billed; responses identify the page verdict and billing status in headers. An MCP server provides take_screenshot, get_page_info, and capture_pdf tools for AI agents. The Free plan includes 1,000 shots per month with no card; paid plans start at $5 for 3,000 shots.
Sign up for ScreenshotNeo’s free plan to try 1,000 screenshots a month with no card.
Best Value
- 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
- Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
- Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
- HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
- What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
Frequently Asked Questions
Does fullPage: true include everything inside a scrollable div?
No. It captures the document’s scrollable page, not the expanded contents of nested scroll containers.
Can I make Playwright include the scrollbar exactly as users see it?
Use a viewport screenshot without fullPage when viewport geometry and scrollbar state are what you need to show.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

