Styled Components utilize ________ to generate unique class names for styles.

  • BEM methodology
  • Hashing algorithms
  • Inline CSS
  • Random strings
Styled Components generate unique class names for styles by using hashing algorithms. This ensures that styles are isolated and don't interfere with other components, a technique often referred to as "CSS-in-JS" or "CSS Modules."

What does the animation-fill-mode property do in a CSS animation?

  • It specifies the animation duration.
  • It defines the timing function for the animation.
  • It controls the behavior of the element before and after the animation.
  • It sets the animation name.
The animation-fill-mode property is used to control the behavior of the animated element before and after the animation execution. It can have values like "none," "forwards," "backwards," and "both." "None" is the default value, which means the element doesn't maintain any styles before or after the animation. "Forwards" retains the styles after the animation ends, and "backwards" maintains the styles before the animation starts. "Both" keeps the styles both before and after the animation.

The ________ property in CSS is used to apply an animation to an element.

  • animation-delay
  • animation-duration
  • animation-iteration-count
  • animation-name
To apply an animation to an element in CSS, you use the animation-name property to specify the name of the animation defined with the @keyframes rule. This property associates the element with the animation it should use.

In a large project, you want to have separate SCSS files for variables, mixins, and base styles. How would you structure and integrate them into a main SCSS file?

  • Import the separate SCSS files for variables, mixins, and base styles at the beginning of the main SCSS file.
  • Manually copy and paste the content of the separate SCSS files into the main SCSS file.
  • Use JavaScript to dynamically load the separate SCSS files when needed.
  • Use external libraries to handle the integration of SCSS files.
To structure and integrate separate SCSS files, you should use the @import directive in the main SCSS file. Import the separate SCSS files for variables, mixins, and base styles at the beginning of the main SCSS file. This allows you to maintain a modular and organized codebase.

If you have two conflicting CSS rules that point to the same element, how does CSS determine which one to apply?

  • The first rule encountered in the stylesheet is applied.
  • The last rule encountered in the stylesheet is applied.
  • The rule with the highest specificity is applied.
  • The rule with the most specific selector is applied.
When two CSS rules conflict and apply to the same element, the last rule encountered in the stylesheet takes precedence. This is known as the "cascading" nature of CSS.

In SASS or SCSS, the ________ allows you to reference the parent selector within a nested rule.

  • !
  • #
  • &
  • @
In SASS or SCSS, the ampersand (&) symbol is used to reference the parent selector within a nested rule. This is useful for creating more specific or complex selectors based on the parent selector's context. For example, you can use &:hover to apply styles when the parent element is hovered.

When using Styled Components, how would you dynamically change the style of a component based on its props?

  • Create separate component variants for each style and switch between them using conditional rendering.
  • Styled Components do not support dynamic style changes based on props.
  • Use the class prop to assign different CSS classes based on prop values.
  • Use the style prop to pass in an inline CSS object and conditionally apply styles based on prop values.
In Styled Components, you can dynamically change the style of a component based on its props by using the style prop. You can pass in an inline CSS object and conditionally apply styles based on the values of the props. This allows for the creation of versatile and reusable components.

What is the default value of the box-sizing property in CSS?

  • border-box
  • content-box
  • margin-box
  • padding-box
The default value of the 'box-sizing' property in CSS is 'content-box.' In this mode, the width and height of an element do not include padding or borders, only the content is considered. This can sometimes lead to unexpected layout behavior, which is why 'border-box' is often preferred.

What would be the primary reason to avoid excessive nesting in SASS or SCSS?

  • Excessive nesting can lead to increased file size
  • It helps with better code organization
  • It improves the performance of stylesheets
  • It is a recommended best practice
Excessive nesting in SASS or SCSS can lead to bloated and inefficient CSS files, which are larger in size. This negatively impacts loading times and page performance. It is advisable to avoid deep nesting to keep the stylesheet lean and maintainable.

A font's loading performance can be improved by ________.

  • compression
  • inlining
  • minifying
  • preloading
A font's loading performance can be improved by "preloading." Preloading involves using the link element in the HTML to fetch and cache font files in advance, reducing the time it takes to load and render text with custom fonts.