Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Столкнулся с проблемой. Не знаю как решить! Нужна помощь (https://javascript.ru/forum/dom-window/71405-stolknulsya-s-problemojj-ne-znayu-kak-reshit-nuzhna-pomoshh.html)

espltd 16.11.2017 09:57

Столкнулся с проблемой. Не знаю как решить! Нужна помощь
 
Всем доброго дня. Столкнулся с проблемой и не знаю как решить. Есть сайт с каталогом товаров (не интернет магазин), а просто сайт-каталог. У каждого товара есть описание, которое когда-то кто-то из менеджеров забивал через визуальный редактор. Забито как попало, везде разный шрифт, отступы и т.д. У одного товара шрифт один, у другого другой, размерность разная и пр.

Заказчик поставил задачку привести все к общему виду. Проблема в чем, на css стили блок(в котором текст) не хочет реагировать, потому, что веб редактор всегда в коде прописывает заглавный стиль, например <p style="color:#000; font-size:15px"> какой-то текст </p> и он его видит как основной.

и мне эти стили не поддаются изменению. Вычищать 1500 товаров ручками не хочу. Не знаете как быть в такой ситуации?

рони 16.11.2017 10:00

espltd,
Цитата:

elem.removeAttribute(name) – удаляет атрибут

espltd 16.11.2017 10:01

не вкуриваю пока, можно подробнее?

espltd 16.11.2017 10:03

я правильно понимаю, я могу таким образом весь атрибут style="бла бла бла" удалить с тегов p ?

laimas 16.11.2017 10:03

espltd,
на стороне сервера, один раз пройтись рег. выражением по страницам если статика или по данным, удалив подобный хлам, или заменив классами. А далее уже CSS свой.

espltd 16.11.2017 10:05

Цитата:

Сообщение от laimas (Сообщение 470296)
espltd,
на стороне сервера, один раз пройтись рег. выражением по страницам если статика или по данным, удалив подобный хлам, или заменив классами. А далее уже CSS свой.

Не статика, у каждого товара описание из базы подгружается. Вот мне и надо очистить всю лишнюю атрибуху

рони 16.11.2017 10:05

espltd,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  p{
      color:#FF0000; font-size:55px
  }

  </style>

  <script>
  window.addEventListener('DOMContentLoaded', function() {
  [].forEach.call( document.querySelectorAll('p'), function(el) {
           el.removeAttribute('style');
    });

    });

  </script>
</head>

<body>
<p style="color:#000; font-size:15px"> какой-то текст </p>
<p style="color:#000; font-size:15px"> какой-то текст </p>
</body>
</html>

laimas 16.11.2017 10:06

Цитата:

Сообщение от espltd
у каждого товара описание из базы подгружается

Тем более бог велел из базы весь такой хлам выкинуть. Еще и лучше, не надо будет с файлами возиться.

Nexus 16.11.2017 10:07

Цитата:

Сообщение от espltd
Не статика, у каждого товара описание из базы подгружается. Вот мне и надо очистить всю лишнюю атрибуху

Будет варварством чистить стили на стороне клиента, в этом случае.

рони 16.11.2017 10:08

espltd,
прислушайтесь к laimas, и сделайте всё на сервере


Часовой пояс GMT +3, время: 12:18.