LWC下拉框搭配两个按钮对齐错位问题,咨询对齐不匹配的原因
布局错位问题原因
- Lightning布局采用12栅格系统,你没有给两个
lightning:layoutItem显式设置size属性指定宽度,默认状态下放置下拉框的layoutItem会被100%宽度的lightning:select撑满整行,导致放按钮的第二个layoutItem被挤到下一行。 - 两个按钮之间没有添加外边距,也可能在宽度计算时出现溢出,触发布局换行。
修复代码示例
<aura:component implements="flexipage:availableForRecordHome,force:hasRecordId" > <aura:attribute name="carTypes" type="String[]" default="Sport Car, Luxury Car, Van"/> <aura:attribute name="searchbuttonlabel" type="String" default="Search"></aura:attribute> <aura:attribute name="newbuttonlabel" type="String" default="New Button"></aura:attribute> <lightning:layout horizontalAlign="center"> <lightning:layoutItem padding="around-medium" size="4"> <lightning:select name="selectItem" aura:id="carType" label="Select Type of Car" variant="label-hidden" value=" " style="width:100%"> <option value="" text="Select Type of Car"></option> <aura:iteration items="{!v.carTypes}" var="carType"> <option text="{!carType}"></option> </aura:iteration> </lightning:select> </lightning:layoutItem> <lightning:layoutItem padding="around-medium" size="3" class="slds-align-middle"> <lightning:button label="{!v.searchbuttonlabel}" variant="Brand" class="slds-m-right_small"/> <lightning:button label="{!v.newbuttonlabel}" variant="Neutral"/> </lightning:layoutItem> </lightning:layout> </aura:component>
修复逻辑:给两个layoutItem分别分配4和3的栅格宽度,总宽度远小于12栅格上限,不会触发换行;给按钮添加右外边距避免宽度溢出,同时添加居中类保证按钮和下拉框垂直对齐。
内容的提问来源于stack exchange,提问作者user102391
相关产品推荐
相关产品推荐

