<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: 26.0.0 -",
    "macOS: 26.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: 26.0.0 -",
    "watchOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SwiftUI",
  "identifier" : "/documentation/SwiftUI/ScrollEdgeEffectStyle",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "SwiftUI"
    ],
    "preciseIdentifier" : "s:7SwiftUI21ScrollEdgeEffectStyleV"
  },
  "title" : "ScrollEdgeEffectStyle"
}
-->

# ScrollEdgeEffectStyle

A structure that specifies blur transitions between scrolling content and an
area with controls, such as toolbars.

```
struct ScrollEdgeEffectStyle
```

## Overview

By default, the system sets an automatic scroll edge effect style to provide
a visual transition between scrolling content and stationary controls at both
edges of the scroll view in the scrolling direction. The system determines which
style to apply based on the platform and context. The
[`hard`](/documentation/SwiftUI/ScrollEdgeEffectStyle/hard) style provides a more opaque, clearly
defined linear boundary, and the [`soft`](/documentation/SwiftUI/ScrollEdgeEffectStyle/soft)
style provides a subtle blurred transition:

**Hard:**

![A partial image of a list scrolling behind a bottom toolbar on iPhone. The area where the toolbar overlaps the list content is nearly opaque, with a defined, straight horizontal line at the top.](images/com.apple.SwiftUI/ScrollEdgeEffectStyle-2@2x.png)

**Soft:**

![A partial image of a list scrolling behind a bottom toolbar on iPhone. The area where the toolbar overlaps the list is translucent and blurry and gets progressively more opaque from the top to the bottom.](images/com.apple.SwiftUI/ScrollEdgeEffectStyle-1~dark@2x.png)

**None:**

![A partial image of a list scrolling behind a bottom toolbar on iPhone. The area where the toolbar overlaps the list is transparent.](images/com.apple.SwiftUI/ScrollEdgeEffectStyle-3~dark@2x.png)

Specify a `ScrollEdgeEffectStyle` for a scroll view using
[`scrollEdgeEffectStyle(_:for:)`](/documentation/SwiftUI/View/scrollEdgeEffectStyle(_:for:)) when the automatic style
the system applies isn’t appropriate for your content and controls. Apply
[`scrollEdgeEffectHidden(_:for:)`](/documentation/SwiftUI/View/scrollEdgeEffectHidden(_:for:)) to a scroll view to remove
the scroll edge effect entirely for an edge you specify.

## Topics

### Creating a scroll edge effect style

[`automatic`](/documentation/SwiftUI/ScrollEdgeEffectStyle/automatic)

A scroll edge effect the system applies automatically when pinned
content overlaps scrolling content.

[`hard`](/documentation/SwiftUI/ScrollEdgeEffectStyle/hard)

A scroll edge effect that provides a linear, nearly opaque boundary
between pinned controls and scrolling content.

[`soft`](/documentation/SwiftUI/ScrollEdgeEffectStyle/soft)

A scroll edge effect that provides a subtle, blurred boundary between
pinned controls and scrolling content.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)