Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Dynamically change CSS style height

I am making users' leaderbord:

 <div class="user">
  <ul id="jogadores" *ngFor="let u of sortedUsers$; let i=index;" (click)="routeToUser(u.id)">
    <li class="user">
      <img class="gravatar" src="https://www.gravatar.com/avatar/{{u.imgUrl}}?d=https://www.1plusx.com/app/mu-plugins/all-in-one-seo-pack-pro/images/default-user-image.png" />
      <div class="progressBar">
        <span style="height: 100%;">
          <i></i>
          <b>{{sortedUsers$[i].points}}</b>

        </span>
      </div>
      <span class="username">
        <strong>{{sortedUsers$[i].username}}</strong>
      </span>
    </li>
  </ul>
</div>

Each <ul> element has some values which are coming from array. All evening I've been trying to change <span style="height: 100%;"> value to some value from {{sortedUsers$[i].points}} so each progress bar would change according to how many points user has. I tried passing value:

<span style="height: {{sortedUsers$[i].points}} %;">

also reaching it with jQuery, but also failed.

like image 920
user122222 Avatar asked Jan 25 '26 14:01

user122222


1 Answers

Check out ngStyle

Update an HTML element styles.

<span [ngStyle]="{'height': `${sortedUsers$[i].points}%`}"></span>

Your value would look like the following, where each number represent a percent: sortedUsers$[i].points = 100 // Percent

like image 65
Kyle Pfromer Avatar answered Jan 27 '26 03:01

Kyle Pfromer



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!