Greyd Components

We have created some custom components for our blocks. Beyond individual components, we have separate documentation for the settings in the Advanced section of each block, our Breakpoints feature and our implementation of the Pseudo-classes (normal, hover, active).

Button Icon Control

The ButtonIconControl component is a wrapper for settings related to setting an icon to a block.

Button Icon Control Panel described in next paragraph

The dropdown to select an icon from the library is provided by the IconPicker component. In addition, the icon can be further positioned with the following options:

  • Icon position: Choose whether the icon should appear to the left or right of the button text.
  • Size: Adjust the icon size using different units, including %, px, em, and others. The default is 100%, which matches the current font size.
  • Space: Define the space between the icon and the text using units like px, %, em, rem, vw, and vh.
  • Visibility without text (optional): Enable or disable icon-only buttons. This option is particularly useful for dynamic templates. When disabled, the button will only display if text content is present. When enabled, the icon may display even if the text field remains empty. This option is only visible when an icon is already selected.

Custom Button Styles

If a block is displaying buttons, input fields or links, the CustomButtonStyles component may be available. It offers to overwrite the current design on a per-block basis and when activating the toggle, several styling options appear:

For Colors, Border and Shadow the Active pseudo-class can also be available.

Dimension Control

The DimensionControl component is a wrapper for two common ways to set settings where up to four different sides can be configured individually: spacings like padding and margin, and border radius. For both options, a reset link is available below the settings if settings have been set.

Spacing Control

Spacing control panel explained in following paragraph

At the spacing control, the opposite sides are combined into one setting (top and bottom, left and right). If you want to change the spacing individually per single side, you can click the link icon on the right in the heading section to toggle the display mode.

You can type in a value in the input field or use the slider next to it. Depending on context, available units can be limited. The default available units are px, %, em, rem, vw, vh. The input field may have a mininum and maximum value set, depending on the block it’s used on. It’s also possible to use the spacing presets defined by the theme or in the editor.

Border Radius Control

Border Radius Control panel, explained in following paragraph

The border radius control takes a numeric value which can also be adjusted by the slider. By default, the available units are px, %, em, rem, vw, vh. If the link icon on the right side is clicked, the mode switches from using one value for all four sides to four input fields for each corner (top left, top right, bottom left, bottom right). When individual sides are used, the slider is not available.

Drop Shadow Control

The DropShadowControl component provides all the settings you need to create shadows on the block.

Drop Shadow Control settings, explained in following paragraph

You can choose the color of the shadow, by default the color is set to black. The following options with sliders adjust the position of the shadow, by setting it horizontally, vertically, how blurry the shadow should be and how far it stretches out from the element. The opacity is for the shadow color. The position is set to outside by default but can be used to be set to inside if needed.

Icon Picker

The IconPicker component provides a selection of icons. It can appear individually, or as part of the ButtonIconControl component.

Dropdown of said Icon picker to select an Icon

You can pick from a variety of icons. For more information about the icons, see the Icons documentation.

Icon picker Dropdown expanded

Range Unit Control

The RangeUnitControl component offers various options to set different settings like sizes, width, height or similar settings. Some of the options are not available at every block, as they can be configured individually.

Screenshot of a Width setting using the RangeUnitControl component. Below the setting title, there is an input field with pixel set as value for a number input, on the left there is a range slider to adjust the width setting as well. In the top right corner, a three dot menu indicates further settings.

By default, the block shows an input field with a unit value. The units can be configured per setting, the default available units are px, %, em, rem, vw, vh. The input field may have a mininum and maximum value set, depending on the block it’s used on. Next to it is a slider to adjust the number value in a different way.

Screenshot of vertical Range Unit Control offset slider

Some settings have the default spacing presets available, indicated by the black preset icon. Toggling this icon will change the input field and slider to the WordPress Core preset selector.

Screenshot of spacing presets as mentioned in previous paragraph

In the top right corner you can find a three dot menu, where you can choose a different mode to set the value. The following modes are available:

Fluid

Fluid mode setting as described in following paragraph

In Fluid mode, you can add a minimum and a maximum value and the actual value will be calculated automatically between those two. It uses the CSS clamp() functionality.

Min of 2 values

Min of 2 values option as described in following paragraph

Selecting Min of 2 values will calculate the smaller value of the two given ones. It uses the CSS min() functionality.

Max of 2 values

Max of 2 values option as described in following paragraph

Selecting Max of 2 values will give you a similar experience to the previous one but this time it calculates the bigger value. It uses the CSS max() functionality.

Custom

Custom mode as described in following paragraph

The custom mode gives you the opportunity to set a custom value, allowing you to work with CSS variables or the calc() functionality.

More in this section

  • Advanced section

    The Advanced section provides additional configuration options that allow more control over a block’s behavior, appearance, and visibility. The available settings vary depending on the block and are only shown when relevant. Core Features By default, WordPress includes the following options in the Advanced section across most blocks: HTML Anchor: Lets you define an anchor […]

    Read more

  • Aria Attributes

    The Aria Attributes feature allows you to enhance accessibility by adding specific aria attributes to any block in the editor. This applies not only to Greyd Blocks, but also WordPress Core blocks and any third-party blocks. Before using it, the feature must be activated on the Features page. Once enabled, each block will display a […]

    Read more

  • Breakpoints

    Some block settings in the Greyd Plugin can be configured individually for different device sizes. This allows more control over how elements behave and appear on various screens. When a setting supports breakpoints, a small button with a mobile device icon appears in the top-right area of the setting. Clicking this icon activates the breakpoint […]

    Read more

  • Pseudo-classes

    Some components in the Greyd Plugin, like color, border or shadow, support styling variations based on their pseudo-class. These states reflect how a user interacts with the element — such as hovering with the mouse or clicking on it. When an element supports pseudo class styling, you can define different styles for each state: Normal: […]

    Read more