使用与Figma设计中相同的CSS值,产生不同的值
P粉642919823
P粉642919823 2023-09-06 18:59:32
0
2
535

我正在尝试实现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粉642919823
P粉642919823

全部回复(2)
P粉300541798

如果即使更改字体粗细值也得到相同的结果,则意味着您遇到了以下问题之一:

  1. 您的字体没有或尚未导入所需的粗细值(例如:您想要 100,但 @font 字体中包含的最接近的值为 400);
  2. 检查是否没有其他规则不会覆盖它;

最后一件事,在这种情况下,您想要更改占位符的外观,因此您必须使用伪元素 ::placeholder,这样您就可以仅更改占位符的样式,而不会冒出现其他问题的风险。

在代码中,我为占位符提供了较浅的颜色,以模拟结果。

.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>
P粉042455250

尝试添加 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...">
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!