Skip to content

[EuiPageTemplate] Remove shaded backgrounds#9220

Merged
tsullivan merged 7 commits intoelastic:mainfrom
tsullivan:page-template/white-background
Nov 24, 2025
Merged

[EuiPageTemplate] Remove shaded backgrounds#9220
tsullivan merged 7 commits intoelastic:mainfrom
tsullivan:page-template/white-background

Conversation

@tsullivan
Copy link
Copy Markdown
Member

@tsullivan tsullivan commented Nov 17, 2025

Summary

Kibana updates to the application area require a consistent white background. This requirement affects EUI, where setting panelled={false} in EuiPageTemplate will render the background color as a light gray.

Instead of defining static backgrounds on the EuiPageTemplate and its sub components, we provide more optional color props to define either transparent (default) or plain background.

API changes

EuiPageHeader & EuiPage

prop type default value description
color transparent plain transparent

Why are we making this change?

Closes #9187

Needed for elastic/kibana#243289

Screenshots #

EuiPageTemplate Before

Screen.Recording.2025-11-24.at.18.01.29.mov

EuiPageTemplate After

Screen.Recording.2025-11-24.at.18.01.44.mov

EuiPage: Before

fixed subtle background
Screenshot 2025-11-24 at 18 08 46
Screenshot 2025-11-24 at 18 04 22

EuiPage: After

transparent plain
Screenshot 2025-11-24 at 18 04 43 Screenshot 2025-11-24 at 18 06 06
Screenshot 2025-11-24 at 18 08 01 Screenshot 2025-11-24 at 18 07 57

Impact to users

🟢 No updates on consumers are required.

ℹ️ Due to changed default background (transparent) for EuiPage consumer may need to define a body background color if not set yet, or they may choose to use color="plain" on EuiPage for a white background.

QA

Remove or strikethrough items that do not apply to your PR.

General checklist

  • Browser QA
    • Checked in both light and dark modes
    • [ ] Checked in both MacOS and Windows high contrast modes
    • [ ] Checked in mobile
    • Checked in Chrome, Safari, Edge, and Firefox
    • [ ] Checked for accessibility including keyboard-only and screenreader modes
  • Docs site QA
  • Code quality checklist
  • Release checklist
    • A changelog entry exists and is marked appropriately
    • [ ] If applicable, added the breaking change issue label (and filled out the breaking change checklist)
    • If the changes unblock an issue in a different repo, smoke tested carefully (see Testing EUI features in Kibana ahead of time)
  • Designer checklist
    • If applicable, file an issue to update EUI's Figma library with any corresponding UI changes. (This is an internal repo, if you are external to Elastic, ask a maintainer to submit this request)

@tsullivan tsullivan marked this pull request as ready for review November 18, 2025 18:37
@tsullivan tsullivan requested a review from a team as a code owner November 18, 2025 18:37
@mgadewoll mgadewoll self-requested a review November 18, 2025 18:38
@mgadewoll
Copy link
Copy Markdown
Contributor

ℹ️ There was an EUI issue for this: #9187

Copy link
Copy Markdown
Contributor

@mgadewoll mgadewoll left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tsullivan Thanks proposing those changes! I think that we can improve the approach a bit to make it more generic.

If you don't mind, I'll commit additional changes to your PR.

@mgadewoll mgadewoll self-assigned this Nov 19, 2025
@elasticmachine
Copy link
Copy Markdown
Collaborator

💚 Build Succeeded

History

cc @mgadewoll

@mgadewoll mgadewoll changed the title [Page Template] Set a white background for page template [EuiPageTemplate] Remove shaded backgrounds Nov 19, 2025
@elasticmachine
Copy link
Copy Markdown
Collaborator

💚 Build Succeeded

History

cc @mgadewoll

@tsullivan tsullivan merged commit 2c10c34 into elastic:main Nov 24, 2025
7 checks passed
@tsullivan tsullivan deleted the page-template/white-background branch November 24, 2025 17:54
mgadewoll added a commit to elastic/kibana that referenced this pull request Dec 8, 2025
## Dependency updates

- `@elastic/eui`: `v109.2.0` ⏩ `v110.0.0`

---

## Changes

- Updates usages of the `message` prop on `EuiInMemoryTable` to
`noItemsMessage`
- Updates usages of `EuiSearchBar`'s `onChange` prop to check for the
`query` argument, as it may be `null` now
- Removes obsolete `color` props on implementations of `EuiPageTemplate`
and `EuiPageTemplate.Header` (`color` prop wasn't applied before either)

## Package updates

### `@elastic/eui` v110.0.0

- Updated `EuiSuperDatePicker` to expose plain text `utcOffset` and
`timeZoneName` in `timeZoneDisplayProps.customRender` render function
([#9245](elastic/eui#9245))
- Updated `EuiHeaderLogo` to add a hover style
([#9240](elastic/eui#9240))
- Made `EuiQuickSelectPanel` available for importing from the
`@elastic/eui` package
([#9239](elastic/eui#9239))
- Updated `EuiAvatar` to support Emoji Sequence ("advanced") in the
`initials` prop ([#9227](elastic/eui#9227))
- Added `color` prop on `EuiPageHeader` to support `transparent`
(default) and `plain` backgrounds.
([#9220](elastic/eui#9220))
- Added `color` prop on `EuiPage` to support `transparent` (default) and
`plain` backgrounds. ([#9220](elastic/eui#9220))
- Updated `EuiPageTemplate` to ensure `panelled=true` renders a
`EuiPageHeader` with a plain background by default
([#9220](elastic/eui#9220))
- Removed the default background style on `EuiPageTemplate`'s outer
wrapper ([#9220](elastic/eui#9220))

**Bug fixes**

- Fixed icon size in `EuiSuperDatePicker`'s time window buttons when
`compressed={true}` ([#9245](elastic/eui#9245))
- Fixed `EuiIcon` visibility issue with `logoElastic` when `color` is
set to `text` or `ghost` in light mode
([#9247](elastic/eui#9247))
- Fixed `EuiInMemoryTable` support for controlled search for plain text
(when `searchFormat="text"`) by properly handling `search.query` and
`search.defaulQuery` ([#9142](elastic/eui#9142))

**Breaking changes**

- Removed deprecated `message` prop from `EuiInMemoryTable`, use
`noItemsMessage` instead
([#9234](elastic/eui#9234))

**Accessibility**

- Improved the accessibility of input fields in the popover of
`EuiSuperDatePicker` by properly labeling them
([#9239](elastic/eui#9239))
- Improved the accessibility of `EuiSelectable` by removing empty
`aria-activedescendant` attribute when no option is active to ensure the
search input is perceivable by screen readers
([#9223](elastic/eui#9223))

---------

Co-authored-by: Weronika Olejniczak <weronika.olejniczak@elastic.co>
Co-authored-by: Jorge Oliveira <jorge.oliveira@elastic.co>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
JordanSh pushed a commit to JordanSh/kibana that referenced this pull request Dec 9, 2025
## Dependency updates

- `@elastic/eui`: `v109.2.0` ⏩ `v110.0.0`

---

## Changes

- Updates usages of the `message` prop on `EuiInMemoryTable` to
`noItemsMessage`
- Updates usages of `EuiSearchBar`'s `onChange` prop to check for the
`query` argument, as it may be `null` now
- Removes obsolete `color` props on implementations of `EuiPageTemplate`
and `EuiPageTemplate.Header` (`color` prop wasn't applied before either)

## Package updates

### `@elastic/eui` v110.0.0

- Updated `EuiSuperDatePicker` to expose plain text `utcOffset` and
`timeZoneName` in `timeZoneDisplayProps.customRender` render function
([elastic#9245](elastic/eui#9245))
- Updated `EuiHeaderLogo` to add a hover style
([elastic#9240](elastic/eui#9240))
- Made `EuiQuickSelectPanel` available for importing from the
`@elastic/eui` package
([elastic#9239](elastic/eui#9239))
- Updated `EuiAvatar` to support Emoji Sequence ("advanced") in the
`initials` prop ([elastic#9227](elastic/eui#9227))
- Added `color` prop on `EuiPageHeader` to support `transparent`
(default) and `plain` backgrounds.
([elastic#9220](elastic/eui#9220))
- Added `color` prop on `EuiPage` to support `transparent` (default) and
`plain` backgrounds. ([elastic#9220](elastic/eui#9220))
- Updated `EuiPageTemplate` to ensure `panelled=true` renders a
`EuiPageHeader` with a plain background by default
([elastic#9220](elastic/eui#9220))
- Removed the default background style on `EuiPageTemplate`'s outer
wrapper ([elastic#9220](elastic/eui#9220))

**Bug fixes**

- Fixed icon size in `EuiSuperDatePicker`'s time window buttons when
`compressed={true}` ([elastic#9245](elastic/eui#9245))
- Fixed `EuiIcon` visibility issue with `logoElastic` when `color` is
set to `text` or `ghost` in light mode
([elastic#9247](elastic/eui#9247))
- Fixed `EuiInMemoryTable` support for controlled search for plain text
(when `searchFormat="text"`) by properly handling `search.query` and
`search.defaulQuery` ([elastic#9142](elastic/eui#9142))

**Breaking changes**

- Removed deprecated `message` prop from `EuiInMemoryTable`, use
`noItemsMessage` instead
([elastic#9234](elastic/eui#9234))

**Accessibility**

- Improved the accessibility of input fields in the popover of
`EuiSuperDatePicker` by properly labeling them
([elastic#9239](elastic/eui#9239))
- Improved the accessibility of `EuiSelectable` by removing empty
`aria-activedescendant` attribute when no option is active to ensure the
search input is perceivable by screen readers
([elastic#9223](elastic/eui#9223))

---------

Co-authored-by: Weronika Olejniczak <weronika.olejniczak@elastic.co>
Co-authored-by: Jorge Oliveira <jorge.oliveira@elastic.co>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[EuiPageTemplate] - Remove shading styles

3 participants