# Bad value “” for attribute “aria-valuenow” on element “div”: The empty string is not a valid floating point number.

> Canonical HTML version: https://rocketvalidator.com/html-validation/bad-value-for-attribute-aria-valuenow-on-element-div-the-empty-string-is-not-a-valid-floating-point-number
> Attribution: Rocket Validator (https://rocketvalidator.com)
> License: CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/)

The `aria-valuenow` attribute requires a valid numeric value and cannot be an empty string.

The `aria-valuenow` attribute is used on range-type widgets like progress bars, sliders, and spinbuttons to indicate the current value. It must be a valid floating point number — for example, `0`, `50`, or `3.5`. An empty string (`""`) is not a number, so the validator rejects it.

If the current value is unknown or indeterminate, you should remove the `aria-valuenow` attribute entirely rather than setting it to an empty string. This is common with indeterminate progress bars where the completion percentage isn't known yet.

When present, `aria-valuenow` should fall between `aria-valuemin` and `aria-valuemax`. All three attributes work together to communicate the state of a range widget to assistive technologies.

## Bad Example

```html
<div role="progressbar"
  aria-valuenow=""
  aria-valuemin="0"
  aria-valuemax="100">
  Loading...
</div>
```

## Good Example — Known Value

```html
<div role="progressbar"
  aria-valuenow="50"
  aria-valuemin="0"
  aria-valuemax="100">
  50% complete
</div>
```

## Good Example — Indeterminate State

```html
<div role="progressbar"
  aria-valuemin="0"
  aria-valuemax="100">
  Loading...
</div>
```

In the indeterminate example, omitting `aria-valuenow` tells assistive technologies that the progress is ongoing but the exact value is not known.
