You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

HTML表单自动换行问题求助:表单与导航按钮无法同行显示

解决导航栏中表单下移问题

问题核心是<form>元素默认属于块级元素,会独占一行,因此被挤到导航链接的下方。按以下修改即可解决:

  1. 给<nav>设置Flex布局,让所有子元素(导航链接和表单)在同一行排列并垂直居中:
nav {
  display: flex;
  align-items: center;
  gap: 10px; /* 控制元素间间距,可按需调整 */
}
  1. 给<form>也设置Flex布局,确保内部的输入框和提交按钮在一行,同时清除表单默认外边距避免错位:
form {
  display: flex;
  margin: 0;
}
  1. 统一导航链接和表单控件的垂直内边距,保证视觉对齐:
    原代码中<a>标签的padding是10px,而输入框和按钮是7px,把输入框和按钮的padding改成10px即可统一高度:
input[type="text"],
#button {
  padding: 10px;
}

修改后的完整CSS代码

body {
  background-color: red
}

nav {
  display: flex;
  align-items: center;
  gap: 10px;
}

input[type="text"],
textarea,
select {
  border: none;
  border-radius: 2px;
  border-bottom-right-radius: 0px;
  border-top-right-radius: 0px;
  padding: 10px;
  font-size: 19px;
  width: 200px;
}

#bar:focus {
  outline: none;
}

#button {
  border: none;
  background-color: #999;
  border-radius: 2px;
  border-bottom-left-radius: 0px;
  border-top-left-radius: 0px;
  color: #666;
  font-size: 19px;
  padding: 10px;
}

#button:hover {
  background-color: #888;
}

a {
  font-size: 19px;
  font-family: Arial, Helvetica, sans-serif;
  padding: 10px;
  background-color: #999;
  border-radius: 3px;
  text-decoration: none;
  color: #666;
}

a:hover {
  background-color: #888;
}

form {
  display: flex;
  margin: 0;
}

修改后,导航链接与搜索表单会在同一行水平排列,且垂直对齐一致。

内容的提问来源于stack exchange,提问作者ChaseTheCoder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 00:10:55