我正在制作一个网站上有两种不同的表格,我不确定究竟是什么导致了这个问题。
表格1:http://www.escalateinternet.com/contact
表格2:http://portal.escalateinternet.com/request-call.php
如果单击要提交的按钮(不输入任何信息),则在表单1中,您会看到一条错误消息,显示我想要的方式。
但是,如果单击要提交的按钮(不输入任何信息),则在表单2中,您会看到一条错误消息,但它显示的形式与表单1中的消息相比要高得多。
我似乎无法弄清楚CSS,Javascript或HTML是否真的会导致这种情况发生。任何人都可以帮助我吗?
答案 0 :(得分:0)
我能找到的唯一快速解决方案是添加
style="margin-bottom: -40px;"
到你的第一个表格div errorcontainer
所以它看起来像
<div class="errorcontainer" style="margin-bottom: -40px;"></div>
是的,有时你也可以这样做。
答案 1 :(得分:0)
这里给出的另一个答案确实解决了你的问题,虽然这是一个一次性的解决方案,如果你将来继续遇到这个问题,可能会被证明是一个麻烦。 (老实说,我通常不喜欢内联样式,因为它们模糊了演示和内容之间的界限。)
问题实际上在于位于错误消息正上方的<textarea>
。如果您使用Web开发人员工具查看它们,您会注意到正在进行的操作,应用了margin-bottom
的20px - 对于不能正常工作的情况,情况并非如此。此边距是在“slickform-standalone.css”中应用于.slickwrap input, textarea, select
的样式的结果。如果没有此margin-bottom
,则错误消息会显示在<textarea>
的底部附近,导致其显示为“太高”。
这是因为您在第二个网页中加入了“bootstrap.css”。应用于BootStrap框架中<textarea>
的默认样式包括margin:0
,覆盖之前20px的margin-bottom
。
那么,如何解决这个问题呢?一个简单的,可能是最好的解决方案是从第二页中提取“bootstrap.css”。由于你没有在两个页面上都有它,我将假设它不是网站设计的基础。如果您确实需要针对该网页上的特定元素的特定样式,请隔离这些样式并仅包含它们。将一个完整的CSS框架包含在网页中仅仅是为了几个元素并不是一个好主意,因为发送给客户端需要很多额外的东西,并且意外的样式(例如你在这里看到的样式)必然会导致问题。
如果你真的开始在那里保留“bootstrap.css”,你可以简单地在两个<textarea>
元素上应用一个样式(或者只是修改它现有的定义):
.largertextarea{
margin-bottom: 20px;
}
这将覆盖导致问题的BootStrap样式,因此您的<textarea>
元素将继续具有低于它们的20px,并将持续按下错误消息。
希望这有帮助!如果您有任何问题,请告诉我。
编辑:不要忘记删除内联应用于您的错误消息的否定margin-bottom
,否则您的错误消息仍会显示为关闭。