Make WordPress Core

Changeset 44895


Ignore:
Timestamp:
03/13/2019 11:36:45 PM (6 years ago)
Author:
afercia
Message:

Accessibility: Improve the password form buttons accessibility.

  • makes the "Cancel" button always visible: this allows to generate a new password also on small screens
  • moves focus back to the Generate Password button when closing the form
  • changes the password reset show/hide button from a clickable <span> element to a real <button> element
  • improves the CSS

Props janak007, afercia.
Fixes #42853.

Location:
trunk/src
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/js/_enqueues/admin/user-profile.js

    r44539 r44895  
    239239                } );
    240240
    241             $generateButton.show();
     241            $generateButton.show().focus();
    242242            $passwordWrapper.hide();
    243243
  • trunk/src/wp-admin/css/forms.css

    r44791 r44895  
    428428}
    429429
    430 button.wp-hide-pw > .dashicons {
     430.wp-hide-pw > .dashicons,
     431.wp-cancel-pw > .dashicons {
    431432    position: relative;
    432433    top: 3px;
     434}
     435
     436.wp-cancel-pw .dashicons-no {
     437    display: none;
    433438}
    434439
     
    460465    border: 1px solid #ddd;
    461466    color: #23282d;
    462     margin: -2px 5px 5px 1px;
     467    margin: -1px 0 5px;
    463468    padding: 3px 5px;
    464469    text-align: center;
     
    516521}
    517522
     523.wp-pwd [type="text"],
     524.wp-pwd [type="password"] {
     525    margin: 0;
     526    /* Same height as the buttons */
     527    line-height: 20px;
     528    min-height: 28px;
     529    max-height: 40px;
     530}
     531
    518532#pass1-text,
    519533.show-password #pass1 {
     
    521535}
    522536
    523 .show-password #pass1-text
    524 {
     537#pass1-text::-ms-clear {
     538    display: none;
     539}
     540
     541.show-password #pass1-text {
    525542    display: inline-block;
    526543}
     
    14631480    .wp-pwd [type="text"],
    14641481    .wp-pwd [type="password"] {
    1465         padding-right: 40px;
     1482        padding-right: 88px;
    14661483    }
    14671484
    14681485    .wp-pwd button.button {
    14691486        background: transparent;
    1470         border: none;
     1487        border: 1px solid transparent;
    14711488        box-shadow: none;
    14721489        line-height: 2;
    14731490        margin: 0;
    1474         padding: 5px 10px;
     1491        padding: 5px 9px;
    14751492        position: absolute;
    14761493        right: 0;
     
    14781495    }
    14791496
     1497    .wp-pwd button.wp-hide-pw {
     1498        right: 40px;
     1499    }
     1500
    14801501    .wp-pwd button.button:hover,
    1481     .wp-pwd button.button:focus,
     1502    .wp-pwd button.button:focus {
     1503        background: transparent;
     1504    }
     1505
    14821506    .wp-pwd button.button:active {
    14831507        background: transparent;
     1508        box-shadow: none;
     1509        transform: none;
    14841510    }
    14851511
    14861512    .wp-pwd .button .text {
    14871513        display: none;
     1514    }
     1515
     1516    .wp-cancel-pw .dashicons-no {
     1517        display: inline-block;
    14881518    }
    14891519
     
    15331563    .form-wrap .form-field {
    15341564        padding: 0;
    1535     }
    1536 
    1537     /* users */
    1538     #profile-page .form-table textarea {
    1539         max-width: 400px;
    1540         width: auto;
    15411565    }
    15421566}
  • trunk/src/wp-admin/css/login.css

    r44791 r44895  
    8080
    8181.login .password-input-wrapper {
    82     display: table;
     82    position: relative;
    8383}
    8484
    8585.login .input.password-input {
    86     display: table-cell;
    87     margin: 0;
     86    margin: 0;
     87}
     88
     89.login .input::-ms-clear {
     90    display: none;
    8891}
    8992
     
    9396
    9497.login .button.button-secondary {
    95     display: table-cell;
    96     border-radius: 0;
    97     vertical-align: middle;
     98    background: transparent;
     99    border: 1px solid transparent;
     100    box-shadow: none;
     101    font-size: 14px;
     102    line-height: 2;
     103    height: auto;
     104    margin: 0;
     105    padding: 5px 9px;
     106    position: absolute;
     107    right: 0;
     108    top: 0;
     109}
     110
     111.login .button.button-secondary:hover {
     112    background: transparent;
     113}
     114
     115.login .button.button-secondary:focus {
     116    background: transparent;
     117    border-color: #5b9dd9;
     118    box-shadow: 0 0 3px rgba(0, 115, 170, 0.8);
     119}
     120
     121.login .button.button-secondary:active {
     122    background: transparent;
     123    box-shadow: none;
     124    transform: none;
    98125}
    99126
     
    128155
    129156.login label {
    130     color: #72777c;
    131157    font-size: 14px;
    132158}
     
    210236    font-size: 24px;
    211237    width: 100%;
    212     padding: 3px;
     238    padding: 5px 45px 5px 5px;
    213239    margin: 2px 6px 16px 0;
    214240}
  • trunk/src/wp-admin/user-edit.php

    r44756 r44895  
    619619            </span>
    620620            <button type="button" class="button wp-hide-pw hide-if-no-js" data-toggle="0" aria-label="<?php esc_attr_e( 'Hide password' ); ?>">
    621                 <span class="dashicons dashicons-hidden"></span>
     621                <span class="dashicons dashicons-hidden" aria-hidden="true"></span>
    622622                <span class="text"><?php _e( 'Hide' ); ?></span>
    623623            </button>
    624624            <button type="button" class="button wp-cancel-pw hide-if-no-js" data-toggle="0" aria-label="<?php esc_attr_e( 'Cancel password change' ); ?>">
     625                <span class="dashicons dashicons-no" aria-hidden="true"></span>
    625626                <span class="text"><?php _e( 'Cancel' ); ?></span>
    626627            </button>
  • trunk/src/wp-admin/user-new.php

    r44612 r44895  
    499499                </span>
    500500                <button type="button" class="button wp-hide-pw hide-if-no-js" data-toggle="0" aria-label="<?php esc_attr_e( 'Hide password' ); ?>">
    501                     <span class="dashicons dashicons-hidden"></span>
     501                    <span class="dashicons dashicons-hidden" aria-hidden="true"></span>
    502502                    <span class="text"><?php _e( 'Hide' ); ?></span>
    503503                </button>
    504504                <button type="button" class="button wp-cancel-pw hide-if-no-js" data-toggle="0" aria-label="<?php esc_attr_e( 'Cancel password change' ); ?>">
     505                    <span class="dashicons dashicons-no" aria-hidden="true"></span>
    505506                    <span class="text"><?php _e( 'Cancel' ); ?></span>
    506507                </button>
  • trunk/src/wp-login.php

    r44776 r44895  
    713713            <div class="password-input-wrapper">
    714714                <input type="password" data-reveal="1" data-pw="<?php echo esc_attr( wp_generate_password( 16 ) ); ?>" name="pass1" id="pass1" class="input password-input" size="24" value="" autocomplete="off" aria-describedby="pass-strength-result" />
    715                 <span class="button button-secondary wp-hide-pw hide-if-no-js">
    716                     <span class="dashicons dashicons-hidden"></span>
    717                 </span>
     715                <button type="button" class="button button-secondary wp-hide-pw hide-if-no-js">
     716                    <span class="dashicons dashicons-hidden" aria-hidden="true"></span>
     717                </button>
    718718            </div>
    719719            <div id="pass-strength-result" class="hide-if-no-js" aria-live="polite"><?php _e( 'Strength indicator' ); ?></div>
Note: See TracChangeset for help on using the changeset viewer.