Top.Mail.Ru
ESP32 веб-сервер, п...
 
Уведомления
Очистить все

[Решено] ESP32 веб-сервер, проблема с символом "%" в CSS

(@grizzly)
Level 1

Здравствуйте, у меня еще одна проблема... Запустил веб-сервер на ESP32, не буду полный код скидывать, страница в браузере отрисовывается неверно. Опытным путем выяснил, что проблема с символами "%" в CSS, то есть к примеру:

.selector {
	min-width: 10%;
	color: #ffffff;
	max-width: 90%;
}

Все, что между символами "%" как будто пропадает. Поэтому и все стили на странице слетают.

Цитата
Создатель темы Размещено : 29.01.2023 12:55
Метки темы
Aveal
(@aveal)
Top level Admin

Привет, да, это относительно известная проблема. Решение на данный момент такое, в файле:

C:\Users\USER_NAME\Documents\Arduino\libraries\ESPAsyncWebServer-master\src\WebResponseImpl.h

Меняем TEMPLATE_PLACEHOLDER, по умолчанию:

#ifndef TEMPLATE_PLACEHOLDER
#define TEMPLATE_PLACEHOLDER '%'
#endif

Здесь символ % надо изменить на другой, который в идеале никогда не встретится в CSS, как вариант:

#ifndef TEMPLATE_PLACEHOLDER
#define TEMPLATE_PLACEHOLDER '~'
#endif

Ну и, соответственно, если в html использовалось что-то вроде:

value=%myVariable%

То теперь это надо превратить в:

value=~myVariable~
ОтветитьЦитата
Размещено : 29.01.2023 15:38
(@grizzly)
Level 1

@aveal 

Огромное спасибо!!! Помогло, а то я уже замучался пока эту проблему пытался сначала найти, а потом решить...

ОтветитьЦитата
Создатель темы Размещено : 29.01.2023 16:06
Aveal
(@aveal)
Top level Admin

Обращайся, если что )

ОтветитьЦитата
Размещено : 29.01.2023 16:08
Поделиться: