feat: Update settings page layout with improved field structure and accessibility
This commit is contained in:
parent
c63ec5f700
commit
430a928df6
|
|
@ -87,6 +87,32 @@ body { font-family: var(--font); background: var(--bg); color: var(--text1); -we
|
||||||
}
|
}
|
||||||
.form-input:focus { outline: none; border-color: var(--accent); }
|
.form-input:focus { outline: none; border-color: var(--accent); }
|
||||||
.form-unit { font-size: 12px; color: var(--text3); width: 24px; }
|
.form-unit { font-size: 12px; color: var(--text3); width: 24px; }
|
||||||
|
|
||||||
|
/* Einstellungen Profil: Label als Überschrift oben, volle Breite, linksbündig */
|
||||||
|
.settings-page__field {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: stretch;
|
||||||
|
gap: 8px;
|
||||||
|
padding: 12px 0;
|
||||||
|
border-bottom: 1px solid var(--border);
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
.settings-page__field-label {
|
||||||
|
display: block;
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--text1);
|
||||||
|
text-align: left;
|
||||||
|
line-height: 1.3;
|
||||||
|
}
|
||||||
|
.settings-page__field .form-input {
|
||||||
|
width: 100%;
|
||||||
|
max-width: 100%;
|
||||||
|
min-width: 0;
|
||||||
|
text-align: left;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
.form-select {
|
.form-select {
|
||||||
font-family: var(--font); font-size: 13px; color: var(--text1);
|
font-family: var(--font); font-size: 13px; color: var(--text1);
|
||||||
background: var(--surface2); border: 1.5px solid var(--border2);
|
background: var(--surface2); border: 1.5px solid var(--border2);
|
||||||
|
|
|
||||||
|
|
@ -258,27 +258,33 @@ export default function SettingsPage() {
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
<div className="form-row">
|
<div className="settings-page__field">
|
||||||
<label className="form-label">Name</label>
|
<label className="settings-page__field-label" htmlFor="settings-profile-name">
|
||||||
|
Name
|
||||||
|
</label>
|
||||||
<input
|
<input
|
||||||
|
id="settings-profile-name"
|
||||||
type="text"
|
type="text"
|
||||||
className="form-input"
|
className="form-input"
|
||||||
value={form.name}
|
value={form.name}
|
||||||
onChange={(e) => setF('name', e.target.value)}
|
onChange={(e) => setF('name', e.target.value)}
|
||||||
|
autoComplete="name"
|
||||||
/>
|
/>
|
||||||
<span className="form-unit" />
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="form-row">
|
<div className="settings-page__field">
|
||||||
<label className="form-label">E-Mail</label>
|
<label className="settings-page__field-label" htmlFor="settings-profile-email">
|
||||||
|
E-Mail
|
||||||
|
</label>
|
||||||
<input
|
<input
|
||||||
|
id="settings-profile-email"
|
||||||
type="email"
|
type="email"
|
||||||
className="form-input"
|
className="form-input"
|
||||||
placeholder="für Login, Recovery & Zusammenfassungen"
|
placeholder="für Login, Recovery & Zusammenfassungen"
|
||||||
value={form.email}
|
value={form.email}
|
||||||
onChange={(e) => setF('email', e.target.value)}
|
onChange={(e) => setF('email', e.target.value)}
|
||||||
|
autoComplete="email"
|
||||||
/>
|
/>
|
||||||
<span className="form-unit" />
|
|
||||||
</div>
|
</div>
|
||||||
{activeProfile?.email && activeProfile?.email_verified === false && (
|
{activeProfile?.email && activeProfile?.email_verified === false && (
|
||||||
<div
|
<div
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user