jquery mobile插件lable和input不显示在一行

本文探讨了在使用jQuery Mobile框架开发Web应用时遇到的表单布局问题,特别是在不同屏幕尺寸下保持Label与Input在同一行的挑战。通过尝试Fieldcontain属性及自定义CSS样式的方法未达预期效果后,最终采用Table布局成功解决了这一难题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

jquery mobile做一个webapp,期间遇到了一个问题,就是lable和input不显示在同一行。

因为通常lable和input默认各占一行,所以需要寻找解决的办法。

首先我使用了fieldcontain属性:

代码如下

<form method="post" action="">
    <div data-role="fieldcontain">
        <label for="fullname">客姓www.111cn.net</label>
        <input type="text" name="fullname" id="fullname">
    </div>
</form>

这个属性成功的让lable和input显示在同一行,然而高兴的太早了,问题接着来了,因为在pc浏览器正常大小下虽然没问题,但考虑到移动设备浏览窗口并没有那么大,测试时发现当屏幕尺寸小于480px时lable和input又会分居两行。然而移动设备的屏幕尺寸并不止于480px,虽然移动设备向着大屏进军,但仍然有128px、320px的。所以得找到新的解决办法。

我发现也有好多人遇到同样的问题,但都没有解决,看到一位朋友给出的办法是自定义css样式

@media (max-width: 480px)

但我测试过后并没有达到预期目的,不知道这个方法正确否,可能我的发法不对,大家可以自行测试~

国内的论坛没找到更多方法,同学告诉我看看国外社区,于是转战谷歌搜索,发现了很多新的方法,虽然大多不能用,但国外的回答度远高于国内,所以以后转战于国外技术社区。

找到的解决办法是用table。

label in a td and input in a td,这就可以让jquery mobile的lable和input在屏幕小于480px时能显示在同一行的办法,lable放一行,input放一行。

程序代码如下:

<form method="post" action="">
    <div data-role="fieldcontain">
      <table>
        <tr>
          <td>
            <label for="fullname">客姓</label>
          </td>
          <td>
            <input type="text" name="fullname" id="fullname">
          </td>
        </tr>
      </table>
    </div>
</form>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值