CSS แบบกำหนดเอง
หาก การปรับแต่ง UI อย่างละเอียด ของเราไม่ตรงกับแบรนด์ของคุณทั้งหมด คุณสามารถใช้ CSS แบบกำหนดเองเพื่อปรับแต่งประสบการณ์การลงชื่อเข้าใช้ของคุณได้ เพียงเพิ่มโค้ด CSS ของคุณลงในตัวแก้ไขของเราและดูผลลัพธ์ที่เปลี่ยนแปลงได้ทันที
CSS แบบกำหนดเองใน Logto Console
- ไปที่ Console > ประสบการณ์การลงชื่อเข้าใช้ > การตั้งค่าแบรนด์ > CSS แบบกำหนดเอง
- แก้ไขโค้ด CSS ในตัวแก้ไขทางซ้าย ผลลัพธ์จะปรากฏทันทีในหน้าต่างแสดงตัวอย่างทางขวา หมายเหตุ: ตัวแก้ไขโค้ดรองรับเฉพาะโค้ด CSS เท่านั้น ยังไม่รองรับ HTML หรือ Javascript
- บันทึกการเปลี่ยนแปลง
- อย่าลืมคลิกปุ่ม “แสดงตัวอย่างสด” เพื่อตรวจสอบการเปลี่ยนแปลงในทุกหน้า
หากต้องการดูการออกแบบอินเทอร์เฟซแบบแยกส่วนของ Logto คุณสามารถไปที่ Logto/packages/experience/src บน GitHub หรือเปิดเครื่องมือ "Inspect Elements" ของเบราว์เซอร์ในหน้าตัวอย่างสดของ Logto
ตัวอย่าง
ตัวอย่างเช่น หากคุณต้องการให้หน้าลงชื่อเข้าใช้ของคุณมีบรรยากาศแบบ Night City สำหรับมุมมองเว็บ ลองใช้ CSS นี้:
@font-face {
font-family: 'Rock Salt';
font-style: normal;
font-weight: normal;
font-display: swap;
src: url('https://fonts.gstatic.com/s/rocksalt/v18/MwQ0bhv11fWD6QsAVOZrt0M6p7NGrQ.woff2')
format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F,
U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
font-family: 'Share Tech';
font-style: normal;
font-weight: normal;
font-display: swap;
src: url('https://fonts.gstatic.com/s/sharetech/v17/7cHtv4Uyi5K0OeZ7bohU8H0JmBUhfrE.woff2')
format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F,
U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
#app * {
font-family: 'Share Tech';
letter-spacing: 0.5px;
--color-type-primary: #ffffff;
--color-type-secondary: #c9c5d0;
}
#app > div[class$='viewBox'] {
background-image: url('https://silverhand.io/assets/v-in-nc.jpg');
background-size: cover;
}
#app main[class*='main'] {
background-image: url('https://logtoeu.blob.core.windows.net/public-blobs/g3cp4y/m-g3cp4y/2024/01/02/w9j0x57g/gentle-universe.png');
background-size: cover;
opacity: 97%;
min-height: initial;
padding: 24px;
padding-bottom: 72px;
border-radius: 12px;
}
#app main[class*='main'] img[class*='logo'] {
content: url('https://silverhand.io/assets/cyberpunk-2077.png');
margin: -20px 0 -12px;
height: 160px;
}
#app form div[class*='inputField'] > div {
outline: none;
border: none;
border-radius: 4px;
}
#app form div[class*='inputField'] input,
#app form div[class*='inputField'] div[class$='countryCodeSelector'] {
background: initial;
background-color: #564f7c;
font-family: 'Share Tech';
letter-spacing: 0.5px;
font-size: 16px;
font-weight: 600;
}
#app form div[class*='inputField'] > div > input::placeholder,
#app main[class*='main'] > div[class*='wrapper'] > div[class*='divider'],
#app main[class*='main'] > div[class*='wrapper'] > form div[class*='content'],
#app main[class*='main'] > div[class*='wrapper'] > form div[class*='content'] > span {
color: #a7a5b3;
}
#app main[class*='main'] > div[class*='wrapper'] > div[class*='divider'] > i[class*='line'],
#app
main[class*='main']
> div[class*='wrapper']
> div[class*='terms']
> i[class*='divider']::after {
background: rgba(247, 248, 248, 14%);
}
#app button {
font-weight: 600;
font-size: 16px;
border-radius: 4px;
}
#app button[type='submit'] {
background: linear-gradient(270.84deg, #2fd6fb -24.55%, #6369fc 44.33%, #a741eb 119.2%), #5d34f2;
}
#app div[class*='socialLinkList'] *,
#app div[class*='main'] * {
font-family: 'Share Tech';
}
#app main[class*='main'] > div[class*='wrapper'] > div[class*='createAccount'] {
font-family: 'Share Tech';
color: #ffffff;
}
#app div[class*='socialLinkList'] > button {
border: none;
background-color: #645995;
}

เนื่องจาก Logto ใช้ CSS Modules คุณอาจเห็นค่าแฮชใน property class
ของ element ใน DOM (เช่น <div>
ที่มี vUugRG_container
) หากต้องการ override เหล่านี้ คุณสามารถใช้ selector $=
ใน CSS เพื่อเลือก element ที่ลงท้ายด้วยค่าที่ระบุ เช่น div[class$=container]
CSS แบบกำหนดเองผ่าน Management API
คุณยังสามารถใช้ Management API PATCH /api/sign-in-exp
พร้อม body { "customCss": "arbitrary string" }
เพื่อกำหนด CSS สำหรับประสบการณ์การลงชื่อเข้าใช้แบบกำหนดเองได้ คุณจะเห็นค่าของ customCss
ถูกแนบหลัง <title>
ของหน้า หาก style มีลำดับความสำคัญสูงกว่า ก็จะ override ได้