#1062 closed улучшение (не будем делать)
История изделия: нерациональное использование площади страницы
Reported by: | alx | Owned by: | Denis_N |
---|---|---|---|
Priority: | major | Component: | БД изделий АДС |
Keywords: | Cc: |
Description (last modified by )
При клике по серийному номеру изделия на главной странице открывается страница его истории, на которой сначала расположена таблица, отображающая протоколы, а за ней - собственно таблица истории. При этом одна строчка таблицы протоколов имеет такую высоту, что выходит за пределы видимой на экране части страницы (и это при 27-дюймовом мониторе!), так что требуется прокрутить контент страницы чтобы только ее увидеть:
А если протоколов будет несколько?
Это хорошо, что теперь на странице истории сразу дается ссылка на протокол, однако мне кажется, что открывшего историю пользователя в первую очередь будет интересовать таблица с записями, и только во вторую (или даже более позднюю) - протоколы. Поэтому я считаю, что таблица истории важнее таблицы протоколов, и стоило бы скомпоновать страницу таким образом, чтобы для просмотра таблицы истории, по возможности, не требовались дополнительные действия. Мне кажется, что при более рациональном использовании площади страницы вполне можно скомпоновать отображаемую информацию так, что она вся уместится на одном экране даже при наличии нескольких протоколов, и пользователю не потребуется использовать прокрутку контента.
И, наконец, я заметил, что синий текст ссылки на фоне фотоизображения довольно трудно читается (см. приложенный скриншот).
Учитывая сказанное выше, предлагаю ряд улучшений:
- перекомпоновать страницу истории таким образом, чтобы сначала на ней располагалась собственно таблица истории, а уже после нее - таблица протоколов (как дополнительные материалы);
уменьшить высоту строк таблицы протоколов - сделать их хотя бы приблизительно такой же высоты, как и строки в таблице истории (размер изображенной во весь экран иконки по-моему не пропорционален важности информации, которую она несет пользователю);
сделать фон строк таблицы протоколов не чисто прозрачным как сейчас, а светлым полупрозрачным, примерно как и у таблицы истории;
добавить перед таблицей протокола какой-то заголовок, из которого пользователю было бы понятно, что далее перечислены ссылки на найденные протоколы (в имени файла может не быть слова "протокол").
- Добавить в ответы сервера поле Cache-Control, в котором указать браузеру на необходимость валидировать документы через If-None-Match при каждой загрузке страницы, как это и было задумано изначально.
Attachments (4)
Change History (22)
by , 21 months ago
comment:1 by , 21 months ago
by , 21 months ago
follow-up: 3 comment:2 by , 21 months ago
comment:3 by , 21 months ago
Replying to san:
Алексей, уточни пожалуйста в каком браузере ты воспроизвёл это
Chromium
Version 90.0.4430.212 (Developer Build) built on Debian 10.9, running on Debian bullseye/sid (64-bit)
follow-up: 5 comment:4 by , 21 months ago
А может у тебя не обновился измененный файл css. Попробуй обновить страничку. Картинка на фоне, например, у тебя "старая".
by , 21 months ago
comment:5 by , 21 months ago
Replying to san:
А может у тебя не обновился измененный файл css.
Возможно. Ничего об этом не знаю. Как отличить старый файл от нового?
Попробуй обновить страничку.
Здесь же веб-интерфейс не "Single Page Application" (как в блоке 3U), когда файлы загружаются один раз и навсегда! При клике по серийному номеру страница и так каждый раз загружается заново. Если при загрузке страницы браузер не загружает какие-то обновленные файлы (а использует старые из кэша) - это баг.
Вот что грузит браузер при открытии истории:
Как видим, ни за файлом main.css, ни за jquery-ui.css браузер вообще не обращается, использует сохраненные версии из кэша. Судя по твоему предположению выше, это не то поведение, которое было задумано. Вероятно, в неправильной стратегии кеширования и заключается баг...
Картинка на фоне, например, у тебя "старая".
Да, я тоже заметил, что в другом браузере на странице аутентификации картинка фона другая...
comment:6 by , 21 months ago
Посмотрел, что отдает сервер на запрос https://r2.adc-line.ru/base/css/main.css?random=@Environment.TickCount. В ответе сервера вообще отсутствует Cache-Control:
HTTP/1.1 200 OK Date: Mon, 27 Feb 2023 07:43:40 GMT Server: Apache/2.4.41 (Ubuntu) Last-Modified: Tue, 24 Jan 2023 05:02:59 GMT ETag: "5b86-5f2fb6df466c0-gzip" Accept-Ranges: bytes Vary: Accept-Encoding Content-Encoding: gzip Content-Length: 5777 Content-Type: text/css
Соответственно, браузер имеет право кешировать как хочет...
Предлагаю добавить в ответ сервера Cache-Control с указанием браузеру нужного поведения (в данном случае, как я догадываюсь, предполагалось, что браузер будет валидировать документ через If-None-Match?).
follow-up: 8 comment:7 by , 21 months ago
предполагалось, что браузер будет валидировать документ через If-None-Match?)
Ну да, а почему этот вариант не сработал?
comment:8 by , 21 months ago
Replying to san:
предполагалось, что браузер будет валидировать документ через If-None-Match?)
Ну да, а почему этот вариант не сработал?
Вопрос не по адресу. Не я менеджер этого проекта. Я менеджер проекта MC-03. :)
Но если ты хочешь, чтобы я погадал... наверное потому что кто-то забыл сказать браузеру (путем указания Cache-Control) делать так, как предполагалось... А браузеры, как и я, телепатией не владеют... :)
comment:9 by , 21 months ago
Кстати, после принудительной загрузки main.css с сервера вид страницы изменился на тот, который показан в comment:2.
follow-up: 11 comment:10 by , 21 months ago
А браузеры телепатией не владеют..
Ну вот, очередное разочарование)
Кстати, после принудительной загрузки main.css с сервера вид страницы изменился на тот, который показан в comment:2.
Т.е. предложения тикета теперь не актуальны?
Нужно только кэш починить.
comment:11 by , 21 months ago
Description: | modified (diff) |
---|
Replying to san:
Т.е. предложения тикета теперь не актуальны?
Три из четырех. Скорректировал предложения в описании тикета.
comment:13 by , 21 months ago
перекомпоновать страницу истории таким образом, чтобы сначала на ней располагалась собственно таблица истории, а уже после нее - таблица протоколов (как дополнительные материалы);
На мой взгляд, когда страничка выглядит так как задумал автор, то протоколы не занимают много места и не отвлекают зрителя от собственно самой истории. У большинства изделий файл протоколов один, и я не видел ни разу чтоб было больше двух, поэтому "предлагаю оставить как есть".
by , 21 months ago
comment:15 by , 20 months ago
Resolution: | → не будем делать |
---|---|
Status: | new → closed |
comment:16 by , 20 months ago
Replying to Denis_N:
Считаю, что лучше оставить всё так как есть
Разработчик - ты, поэтому, безусловно, решение за тобой. Жаль, что теперь так и будет после (почти) каждого обновления у всех пользователей отображаться фигня, подобная показанной в описании тикета... :(
follow-up: 18 comment:17 by , 20 months ago
Так не будет же фигня. Теперь CSS и JS не кэшатся, см. comment:12
Комментарий Дениса относится только к оставшемуся предложению о перекомпоновке
comment:18 by , 20 months ago
Replying to san:
Так не будет же фигня. Теперь CSS и JS не кэшатся, см. comment:12
А, действительно. Прошу прощения, comment:12 я пропустил...
А, кстати, почему задумано было, чтобы файлы кешировались (но проверялась их актуальность), но сделано чтобы они не кешировались? У нас же при (почти) каждом нажатии кнопки страница загружается заново! Следовательно, теперь при каждом нажатии кнопки браузер заново загружает все файлы (стили, скрипты, картинки)... Это же сильно тормозит отклик и ухудшает субъективную "отзывчивость" системы! Почему не было сделано ровно так, как было задумано?
Комментарий Дениса относится только к оставшемуся предложению о перекомпоновке
Так их же там оставалось два! Я посмотрел в описании тикета, увидел предложение про If-None-Match, и расстроился... :) А comment:12 я пропустил...
О, только сейчас заметил, что заголовок "Протоколы" перед таблицей уже есть. :) Но он написан черным по довольно темному месту фоновой картинки, из-за чего его трудно заметить.
Предлагаю сделать фон для надписи "Протоколы" более светлым.