搜尋

首頁  >  問答  >  主體

使用與Figma設計相同的CSS值,產生不同的值

我正在嘗試實現Figma 的設計,但注意到它並不總是準確的:

這是我要建立的輸入欄位:

請注意文字有多薄。這些是來自 Figma 的值:

color: var(--heading-black, #222);
/* Button/16/Regular */
font-family: Inter;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 16px;

我也使用相同的顏色和字體粗細,我甚至嘗試使用 100 而不是 400,但我的結果是:

我的文字比較厚,我不知道為什麼。這是我的輸入欄位的 CSS 程式碼:

.search-field {
    margin-left: 65px;
    width: 429px;
    height: 44px;   
    font-size: 16px;
    font-weight: 400;
    padding-left: 46px;
    background: url("../../../assets/icons/search.png") no-repeat;
    background-color: white;
    background-size: 21px;
    background-position: 14px center;
    border: none;
    border-radius: 4px;
    outline: none;
    color: #222;
}

和 html:

<input type="text" class="search-field" value placeholder="Booking.com, Expedia, Otto...">

我做錯了什麼?

P粉642919823P粉642919823451 天前568

全部回覆(2)我來回復

  • P粉300541798

    P粉3005417982023-09-07 17:54:16

    如果即使更改字體粗細值也得到相同的結果,則表示您遇到了以下問題之一:

    1. 您的字體沒有或尚未匯入所需的粗細值(例如:您想要 100,但 @font 字體中包含的最接近的值為 400);
    2. 檢查是否沒有其他規則不會覆蓋它;

    最後一件事,在這種情況下,您想要更改佔位符的外觀,因此您必須使用偽元素::placeholder,這樣您就可以只更改佔位符的樣式,而不會冒出現其他問題的風險。 < /p>

    在程式碼中,我為佔位符提供了較淺的顏色,以模擬結果。

    .search-input{
        box-sizing: border-box;
        background-color: #21A668;
        padding: 10px;
    }
    
    .search-field{
        width: 429px;
        height: 44px;   
        font-size: 16px;
        font-weight: 400;
        padding: 0 10px 0 46px;
        background: url("../../../assets/icons/search.png") no-repeat;
        background-color: white;
        background-size: 21px;
        border: none;
        border-radius: 4px;
        outline: none;
        color: #222;
    }
    
    .search-field::placeholder{
        color: #bdbdbd;
    }
        <div class="search-input">
            <input type="text" class="search-field" value placeholder="Booking.com, Expedia, Otto...">
        </div>

    回覆
    0
  • P粉042455250

    P粉0424552502023-09-07 14:35:37

    嘗試新增 font-family 屬性及其在選擇器中的值,並使用我在這裡使用的 cdn,因為它嵌入了所有可用的字體粗細。

    @import url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&family=Open+Sans&family=Plus+Jakarta+Sans:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,200;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');
    
    .search-field{font-family: 'Inter', sans-serif;}

    @import url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&family=Open+Sans&family=Plus+Jakarta+Sans:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,200;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');
    
    body{
      background: green;
    }
    
    .search-field {
        margin-left: 65px;
        width: 429px;
        height: 44px;
        font-family: 'Inter', sans-serif;
        font-size: 16px;
        font-weight: 400;
        padding-left: 46px;
        background: url("../../../assets/icons/search.png") no-repeat;
        background-color: white;
        background-size: 21px;
        background-position: 14px center;
        border: none;
        border-radius: 4px;
        outline: none;
        color: #222;
    }
    <input type="text" class="search-field" value placeholder="Booking.com, Expedia, Otto...">

    回覆
    0
  • 取消回覆