# Skyline Configuration

# Global Imports

We recommend that all projects using Skyline include the following files in their main SCSS entrypoint.

# Resets

Skyline provides several files to help create consistency across projects using our styles.

Warning: Importing these files into projects with existing styles may cause unexpected behaviour! Proceed with caution and thorough testing.

  • Reset ensures core styles behave the same way across browsers before starting to styling them. This is strongly recommended to avoid browser inconsistencies.
  • Box sizing ensures that border-box is the default for all elements within the project. We do this because it's easier to predict and control element size (opens new window). But, all Skyline components will include this box-sizing within them to account for legacy implementations that cannot import globally.

How to

@import '~@skyline/scss/src/generic/generic.reset';
@import '~@skyline/scss/src/generic/generic.box-sizing';

# Theme

This file outputs the required styles for using the theme utilities and related Buttons. It’s a mandatory file for any project using the default Benevity theme.

Importing the file will use the Benevity default values for Brand and Action. You can combine it with the CSS custom properties variable to provide client-specified Brand and Action color values.

How to

@import '~@skyline/scss/src/theme/benevity';

# Variables

We use SCSS variables to configure several optional global settings.

These can be set in your main SCSS entry point. You can also set it in your webpack loader configuration by using something like style resource loader (opens new window). Here's an example of how we do this in Skyline (opens new window).

# CSS Custom Properties

$skyline-enable-css-custom-properties: true | false;

Lets you use CSS variables (opens new window) to control properties like Brand and Action colors-allows for simpler client-configured colors vs. fixed HEX codes.

When you enable this property, you'll be able to customize the default body font using the --body-font variable. For example:

:root {
  --body-font: Wingdings;
}

Requirements:

Requirements:

  • A font size in ems, not px, applied to the root HTML element.