Доброго времени суток.
При загрузке обложки, если картинка больше расширения экрана, то окно preview не помещается на экран и выходит за viewport. Соответственно кнопки Загрузить и Закрыть тоже скрываются выходя за пределы экрана. Как можно пофиксить эту проблему? Если делать через CSS то нарушается работа рамки выбора области загружаемого изображения.
Вот мобильный
Вот 1024
У себя уменьшил окно браузера
неверно. Надо сначала уменьшить окно, а потом картинку в загрузчике выбирать. Вьюпорт высчитывается в момент загрузки. А вы уже ждущую картинку в окне и потом изменили размер?
Имя браузера и его версию уточните у пользователя. У себя с вашей картинкой и данными не повторил. Вы и сами на этом сайте можете проверить работу в своем ЛК
Браузер Хром последние обновление. Пробовал только что и в Opera, результат тот-же. Изначально так и делал - уменьшаю размер окна браузера и потом загружаю картинку. Просмотрел в инспекторе стили все исходные стили не переписываются другими. Вот ссылка на регистрацию. Попробуйте непосредственно на сайте.
Вот похожая тема, но про аватарку
и мы там видим что мы стилями влияем на скрипт. Я не знаю актуально ли стилевое правило - но вроде как и на загрузчик обложки правило подходит. За корректность не ручаюсь.
В любом случае без этого стиля вначале надо проверить на теме по дефолту. Чтобы не костылять за зря.
гениальная мысль - кнопки что справа - перенести в левую часть.
Вот стили:
.rcl-hand-uploader #ssi-rightButtons { float: left; }
конечно это не решает проблему с выходом окна за пределы (не могу понять - может дело в вашей теме). Такой фикс
С начало начну с темы. Потом посмотрю еще раз css. Ядро плагина я не трогал и понимаю последствия этого. Только переопределил стили ссылок и кнопок в своем css. По поводу переноса кнопок - уже пробовал, но проблема в том что картинку всю не видно, а пользователь захочет как всегда то что спряталось 👿
andrey.porsev сказал(а)
а пользователь захочет как всегда то что спряталось
просто нажмет "загрузить" - без кропа.
Ну или скролл добавить
.rcl-hand-uploader #ssi-modalWindow { overflow: scroll; }
я думаю дело все таки у вас или в теме, или какой плагин скрипт перебивает. Увы - не нашел причину. У себя повторить на сайте не смог, всё в области просмотра.
Добрый день.
Странный баг.
Методом перебора так и не смог определить, что перебивает размеры модального окна и картинки.
Пробовал удалить все плагины и отключить свои файлы стилей и скриптов (хоть там и нет ничего особо такого), не помогло ни с одним из шаблонов WPR. Но если я переключал тему WP на стандартную, то все начинало работать. Даже пробовал на стандартной теме WP со всеми включёнными плагинами и все тоже работало. Переключаюсь на свою - снова работает не корректно. Отключал все свои стили и js при работающих плагинах - ноль.
Фигня какая-то.
А вы не могли бы сказать в каком файле высчитывается размер preview. Может удастся найти, что переопределяет эти параметры.
И да, метод который описан в теме про аватарку я уже пробовал. Помогает решить проблему с размером окна, но хотелось бы полный функционал. И поскольку я такой не один, значить есть какой-то модуль который все портит. Жаль что этот человек на в сети, а то можно было-бы сверить список плагинов и вычислить общие для сужения поиска.
У меня похожая проблема, я вообще её обнаружил когда попытался с мобильного телефона(любого),айпада.. загрузить фото на аватарку.На большом экране всё работает, но когда начинаешь уменьшать окно браузера, то окно с загруженной фоткой или незагруженной, не меняется под размеры браузера. А когда грузишь большую фотку Экран: 2048х1152 фотка: 2953х1610 сдвигается вправо и кнопки(загрузить и закрыть) просто не видны. Фотки со смартфонов имеют огромное расширение и загрузить их просто не реально. То есть по каким то причинам, окно загрузки фото не пересчитывается под размер экрана.
Я не думал о этой проблеме пока не узнал, что большая часть пользователей пришло с мобильных устройств.
Самое интересное, что сегодня,один раз окно всё-таки сработало как надо.
Список моих плагинов:
1. CB Change Mail Sender
2. AH Display Widgets
3. Kama WP Smiles
4. MailPoet 2
5. Nav Menu Roles
6. TablePress
7. WP-Recall
8. WP-Опросы
9. WPS Hide Login
Думал список плагинов поможет, но у нас только один общий и это WP-Recall.
Сейчас просматриваю его файлы в поиске какой файл формирует и присваивает значения ширины и высоты картинке. Нашел uploader-cover.js. Он отвечает за загрузку картинки и тут считываются размеры картинки и передаются в библиотеку Jcrop где как я понимаю вырезается выбранная область пользователем. Но эта библиотека сжата и нечего не понять. А вот где вписываются параметры ширины и высоты в тег img и класс jcrop-holder в модальном окне при его формировании еще не нашел.
В общем поковыряв немного Ваш модуль пришел к выводу, что я был прав и файл uploader-cover.js таки подгружает картинку в этой строке
jQuery('body > div').last().after('<div id=rcl-preview><img src="'+imgUrl+'"></div>');
и от нее уже формируется все остальное. Но остается один вопрос - откуда, а точнее с какого js этой картинке присваиваются стили в том числе ширина с высотой и почему тогда к остальным картинкам не применяются те же стили. В этой строчке этого тоже нет. И почему на всех темах в том числе и на вашем сайте при маленьких разрешениях эта картинка подгоняется под размер модального окна, а у меня модальное окно растягивается на ширину картинки и соответственно вылазит за пределы viewport?
Немного подумав решил захардкорить размеры картинки прям в вашем коде, пока в качестве эксперимента. Задал размеры максимально 1024 (не вижу смысла раскатывать окно на весь экран если картинка будет очень большой и экран 1980) и растягиваю картинку на всю ширину, а высота по умолчанию.
jQuery('body > div').last().after('<div id=rcl-preview><img src="'+imgUrl+'" style="max-width:1024px; width:100%; height:auto;"></div>');
Вроде помогло и возможно Вы сможете на основе этого как-то пофиксить плагин для большей универсальности.
Но вопрос остается открытым - в каком месте, если не тут, картинке прописываются стили и почему картинка не подгоняется под модальное окно, а сама задает ему размер.
- эта библиотека идет в ядре вордпресс
Некоторые темы что-то видать не так делают и как-то влияют на нее. Стоит написать разработчику темы чтобы он посмотрел. Ведь что из темы влияет на скрипт из ядра ВП - это только ему знать.
Если так, то единственное место где еще применяется эта библиотека в WP - Customizer, в который я прописываю свои поля для настройки параметров страниц и одни из них есть загрузка картинок с возможностью их обрезки. Но там все прописано по кодексу WP и отсебятины нет, к тому же я пробовал его тоже полностью отключать, но безрезультатно.
И еще вопрос, я так понял, что модальное окно у Вас генерируется тоже динамически сторонней библиотекой. Просто, если бы оно было сразу прописанной внизу страницы с картинкой и просто скрыто, то можно было-бы заранее прописать css для нормального формирования этого окна и подгонкой этой картинки под него...
Стоп. Может это реально глючит не Jcrop, ведь он берет размеры уже вписанной в модальное окно картинки, а модальное окно неправильно формируется... Что думаете?
Я не могу понять, что мог сделать не так в своей теме, что это повлияло на работу модуля и даже отключение своих css, js и плагинов не заставило его работать корректно. Уже начал грешить на Underscores (базовый набор для создания темы WP), но установив его в чистом виде все работало идеально. Значит что-то сам дописал, но где? У меня все свои классы и в js я нигде не переопределяю стили img в чисто виде. Думаю надо еще покапать под библиотеку ssi-modal, которая отвечает за формирование этого окна которое не влазит в размеры viewport.
andrey.porsev сказал(а)
Я не могу понять, что мог сделать не так в своей теме, что это повлияло на работу модуля и даже отключение своих css, js и плагинов не заставило его работать корректно. Уже начал грешить на Underscores (базовый набор для создания темы WP), но установив его в чистом виде все работало идеально. Значит что-то сам дописал, но где? У меня все свои классы и в js я нигде не переопределяю стили img в чисто виде. Думаю надо еще покапать под библиотеку ssi-modal, которая отвечает за формирование этого окна которое не влазит в размеры viewport.
Покапай пожалуйста, мне в голову ничего не приходит, кроме как кнопки перенести.
Otshelnik-Fm сказал(а)
гениальная мысль - кнопки что справа - перенести в левую часть.
Вот стили:.rcl-hand-uploader #ssi-rightButtons { float: left; }
конечно это не решает проблему с выходом окна за пределы (не могу понять - может дело в вашей теме). Такой фикс
Я дико извиняюсь, но я не могу понять где эти стили поменять, какая папка? ❓
А лучше всего, установить кнопки вместо надписи загрузка изображения.)