Utilize the parent CSS style on its child elements

Within my SCSS code, I am looking to implement disabled styles from the .parent class to its child elements.

This is how my current SCSS structure looks:


.parent {
   .disabled {
     background: grey;
   }
   > .group {
      ...
      > .input {
          background: white;
        }
      > .icon {
          background: blue;
        }
   }
}

The corresponding HTML structure is as follows:

<div class="parent" ng-class="{disabled: el.isDisabled}">
   <div class="group">
      ...
      <textarea class="form-control input">
         ...
      </textarea>
      <div class="icon">
         ...
      </div>
   </div>
</div>

How can I extend these defined styles to the elements with classes of input and icon?


To provide additional context, my existing implementation appears somewhat redundant:

.parent {
   > .group {
      ...
      > .input {
           background: white;
           &.disabled {
              background: grey;
           }
        }
      > .icon {
           background: blue;
           &.disabled {
              background: grey;
           }
        }
   }
}

Answer №1

To incorporate your disabled class, simply nest your classes within it:

   .disabled.parent {
     > .group {
       ...
       > .icon,
       > .input {
         background: grey;
       }
     }
   }

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

Dynamic value for textbox using Selenium

While working on building a test case, I encountered a problem with a search text box on my web page. The Selenium IDE was used to record the actions taken. type | id=search_input_char_name_136 | myproduct // textbox for search click | css=button.oe_ ...

What is the best way to convert line breaks within a textarea to use <br/> instead?

In my project, I have created a textarea along with a button. This button is designed to replace line breaks within the textarea with <br /> tags. Sample Code: var gtcontbtnafterTA = document.getElementById("contbtnafterTA"); var gtRequesttextare ...

Is there a way to insert a value into the input field using JQuery or JavaScript?

After reading my previous post on posting values into an input box, a commenter suggested using JQuery or Javascript. For more code and information, please refer to the link provided above. <label>Date</label>:&nbsp&nbsp <input sty ...

Can flex-basis be used with percentage in IE11?

Encountering an issue with flexbox and IE10/11. Trying to utilize min-width/max-width values, but IE11 is not cooperating. Discovered flex-basis and used a percentage value, which functions as intended in Chrome but fails in IE11. Experimented with adding ...

Using Bootstrap to handle opening a link when a dropdown menu button is clicked

Utilizing Bootstrap in my main menu was essential for navigating through the numerous pages, subpages, and sub-subpages within my project. The dropdownmenu feature proved to be very helpful in this regard. However, my client now has a specific request - t ...

Implementing image rendering functionality in Vue.js

So here's what's going on: I developed a horror movie bucket list app for my bootcamp final project. The minimum viable product received positive feedback, and I obtained my certification. However, now that I've graduated, I want to enhance ...

HTML structure consisting of a 3 by 3 grid

Creating a 3x3 grid with cells that have varying heights depending on content is proving to be challenging. Except for the cells marked with red arrows, the rest of the grid has fixed height in pixels. I attempted to build a 3x3 grid using divs to experi ...

What steps should be taken to incorporate that dynamic sliding element (like a sliding screen paper) on the webpage?

When hovering over the leftmost part of the homepage at www.techants.com, a box shifts to the foreground. I examined the code and noticed a reference to something called screen paper. Does anyone know which script is being used for this effect? How can I ...

Issues with HTML5 video playback in Apple machines using the Firefox browser

On a website I'm developing, I've included an HTML5 video that works perfectly except for one specific issue - it won't play on Firefox in Apple devices. Surprisingly, it functions well on all other browsers and even on Firefox in Windows an ...

Is it possible to navigate to an anchor within an HTML element that has relative positioning?

Check out the HTML code below: <li name="services"> <h1>Services</h1> <p>text</p> </li> <li name="about"> <h1>About</h1> <p> ...

The spacing problem arises from the interaction between two HTML tags containing a Bootstrap file

view image details hereUsing Bootstrap 5, I have a screenshot with an h5 element in a black border and an em tag in a red border. I specified margin 0 to the h5 element but it still does not touch the em tag (in red border). I have tried adjusting line spa ...

Ways to activate an event with select2

Hey there! I have a unique setup on my selling item page with select tags. The first select tag is created using HTML, while the others are dynamically added using jQuery when the user clicks on an "Add More" button. <select id='code0' onclic ...

Incorporating a hyperlink within a list item for an image

Currently, I am attempting to create a clickable image within an unordered list. Although the paragraph is clickable, unfortunately, the image itself is not responding as expected. <ul> <a href="/movies/test/"><li> ...

Issue with applying Bootstrap button style to buttons

I have been attempting to customize these buttons using my CSS, but unfortunately, they are not reflecting the desired style. Even after creating new buttons, I encountered the same issue where they did not adhere to the CSS. Upon closer inspection, I not ...

What is the best way to align bars at the bottom of a CSS vertical bar chart?

Currently, I am exploring the functionality of two distinct bar charts that I designed using HTML and CSS: one horizontal and the other vertical. Is there a way to shift the bars in my vertical bar chart from the center down to the bottom? https://i.sstat ...

Display a color picker within an HTML div with fixed positioning to prevent scrolling within the element

Within a div, I have text boxes that trigger a color picker to be displayed when clicked. Currently, the color picker appears at the bottom of the text box, but I would like it to be positioned on the left or top without requiring scrolling. Can anyone a ...

Tips for customizing the CSS of a child component that has been imported from a different module in Angular 2

I have been using agm-snazzy-window from amg-snazzy-window There is a mention that I can modify the css class, but when I try to do so, it doesn't seem to work. Here is an example: map-component.html <agm-snazzy-info-window [closeWhenOthersOp ...

The dropdown menu displaying the img-dropdown-content with a display set to none is not functioning as anticipated

Attempting to hide drop down menu with img-dropdown-content but it's not working, possibly being overridden by another element - only using html and css I have experimented with visibility: hidden; both with and without !important as well as display: ...

I have a question about CSS selectors: How can I change the font color of a parent <li> element when the child

After struggling for hours, I'm finally throwing in the towel on this issue. I have an unordered list with no background at the top level and text color of #fff. When rolled over, the background turns #fff and the text color turns #000. The child ul ...

Disable the ability to close the dialog box by clicking

this is my dialog <div *ngIf="visible" class="overlay" (click)="close()"> <div role="dialog" class="overlay-content"> <div class="modal-dialog" (click)="$event.stopPropagation()"> <!-- Modal content--> ...