android 国家代码为CN(intl-tel-input)的移动的设备上的CSS问题

3df52oht  于 2024-01-04  发布在  Android
关注(0)|答案(5)|浏览(202)

我使用这个库向用户显示国家代码和国旗:https://github.com/jackocnr/intl-tel-input
在桌面上,一切都按预期工作。即使在屏幕调整大小的响应也是预期的。当我使用Android Chrome在移动终端上测试页面时,问题出现了。
问题是:
x1c 0d1x的数据
该应用程序不允许用户选择其他国家(滚动空间是隐藏的-用户只能看到默认选择的国家)。
我试过使用z-index:9999,但它不工作。
下面是CSS实现:

  1. .intl-tel-input .country-list {
  2. position: absolute;
  3. z-index: 9999;
  4. list-style: none;
  5. text-align: left;
  6. padding: 0;
  7. margin: 0 0 0 -1px;
  8. box-shadow: 1px 1px 4px rgba(0,0,0,0.2);
  9. background-color: white;
  10. border: 1px solid #CCC;
  11. white-space: nowrap;
  12. max-height: 200px;
  13. overflow-y: scroll;
  14. }

字符串
我不知道为什么这似乎不工作的移动的设备。

qyzbxkaa

qyzbxkaa1#

我遇到了同样的问题,当输入是在一个模态/对话框。
在移动的上,<body>将位于它的末尾,因为:
https://github.com/jackocnr/intl-tel-input/blob/v16.0.8/src/js/intlTelInput.js#L117
有一个设置容器元素的选项,尝试更改dropdownContainer选项。

yquaqz18

yquaqz182#

Image show error
我也有同样的移动的问题,处理了可能对某人有帮助的JS,大家可以参考。
我已经处理了检查,它处理了重新定位所显示的列表国家的位置的标志上的点击。我看到的代码正在工作。

  1. iti = window.intlTelInput(inputPhoneNumber, intlTelInputOptions)
  2. iti.isMobile= false;
  3. $('.iti__selected-flag').click(function () {
  4. if ($('body.iti-mobile').length) {
  5. $('.iti--container').css('top', $(this)[0].getBoundingClientRect().top + 35 + 'px');
  6. $('.iti--container').css('left', $(this)[0].getBoundingClientRect().left + 'px');
  7. }
  8. })

字符串

7ivaypg9

7ivaypg93#

return false;

  1. $(window).on('scroll', function() {
  2. positionItiContainer();
  3. });
  4. $('.iti__selected-flag').click(function () {
  5. positionItiContainer();
  6. });
  7. var positionItiContainer = function() {
  8. if ($('body.iti-mobile').length) {
  9. var phoneElement = document.getElementById('phone');
  10. var selectedFlag = document.querySelector('.iti__selected-flag');
  11. var phoneRect = phoneElement.getBoundingClientRect();
  12. var selectedFlagRect = selectedFlag.getBoundingClientRect();
  13. $('.iti--container').css('top', selectedFlagRect.bottom + 'px');
  14. $('.iti--container').css('left', selectedFlagRect.left + 'px');
  15. }
  16. };

字符串

展开查看全部
y3bcpkx1

y3bcpkx14#

这是我在库中也发现的一个错误。当我检查时,我可以看到文件的最大高度已经改变。您可以通过添加以下内容覆盖该最大高度

  1. .iti-mobile .intl-tel-input .country-list {
  2. max-height: 200px !important;
  3. }

字符串

6tr1vspr

6tr1vspr5#

你可以试试

  1. iti__country-list{white-space:nowrap}

字符串

相关问题