Почему я не могу сохранить изменения CSS в Firebug? [закрыто]


143

Firebug - самый удобный инструмент, который я нашел для редактирования CSS - так почему же нет простой опции «сохранить» для CSS?

Я всегда обнаруживаю, что делаю твики в Firebug, затем возвращаюсь к своему исходному файлу .css и копирую твики.

Кто-нибудь придумал лучшее решение?

РЕДАКТИРОВАТЬ: я знаю, что код хранится на сервере (в большинстве случаев не мой), но я использую его при создании своих собственных веб-сайтов.

Firebug просто использует .css файл, загруженный с сервера Firefox, он точно знает, какие строки в каких файлах он редактирует. Я не понимаю, почему нет опции «экспорт» или «сохранить», которая позволяет вам сохранить новый файл .css. (Который я мог тогда заменить удаленным с).

Я пытался искать во временных местоположениях, выбирал « Файл» > « Сохранить» и экспериментировать с параметрами вывода в Firefox, но до сих пор не нашел способа.

РЕДАКТИРОВАТЬ 2: Официальная дискуссионная группа имеет много вопросов , но нет ответов.


Вот сообщение, которое я сделал группе недавно
NickFitz

Вы пробовали cssUpdater.com ? С его помощью вы редактируете в FireBug, нажмите кнопку «Синхронизировать сейчас», чтобы перенести все ваши изменения в исходный файл (ы) CSS.
Джонте

2
У Firebug есть особый способ сделать это. После внесения нескольких изменений в css путем добавления правил в правое представление css, щелкните по адресу для ссылочного элемента стиля в крайнем правом углу, затем выберите Live Edit в раскрывающемся меню (НЕ РЕДАКТИРОВАНИЕ ИСТОЧНИКА), нажмите в прямом эфире Редактировать и копировать / вставить в свое удовольствие.
Крис Лайк

Автоматическая перезагрузка в браузере при локальном изменении файла. Таким образом, я могу остаться в моем редакторе. Но это работает только локально.
Нильс Линдеманн

Ответы:


27

Я попал сюда в поисках именно этой функции, то есть возможности сохранять отредактированные CSS свойства обратно в исходный файл (на моей локальной машине разработки). К сожалению, после того, как я много искал и не нашел ничего подходящего для меня (хорошо, есть CSS Updater, но вы должны зарегистрироваться, и это платное расширение ...) Я отказался от Firefox + Firebug и искал что-то похожее для Google Chrome. Угадайте, что ... Я только что нашел этот замечательный пост, который показывает хороший способ заставить это работать (встроенный в Chrome - нет необходимости в дополнительных расширениях):

Изменить CSS и сохранить в локальной файловой системе с помощью Chrome Developer Tools

введите описание изображения здесь

Я попробовал это сейчас, и он отлично работает, выделяя измененные строки. Просто нажмите Сохранить и все готово! :)

Вот видео, объясняющее это и многое другое: Google I / O 2011: Chrome Dev Tools Reloaded

Надеюсь, это поможет, если для вас не имеет значения, что вы меняете браузер при редактировании своих CSS-файлов. Я уже внес изменения, но мне бы очень хотелось, чтобы эта функциональность была встроена в Firebug. :)


[Обновление 1]

Сегодня я только что видел это видео: Firefox CSS live edit в Sublimetext (работа в процессе) Выглядит действительно многообещающе.

[Обновление 2]

Если вы используете Visual Studio 2013 с Web Essentials, вы сможете автоматически синхронизировать CSS, как показано в этом видео:

Web Essentials: интеграция инструментов браузера


1
Есть и другой вариант: в chrome canary вы можете включить прямое отображение файлов js и css. Инструкции по включению эксперимента в рабочей среде canary
Matteo Conta

Очень мило @contam. Вещи действительно развиваются! Спасибо за обновление. :)
Лениэль Маккаферри

@LenielMacaferi [Обновление 2]: я никогда не мог заставить веб-основы обновлять реальный css. Есть ли какая-либо конфигурация, которую я должен установить?
Арванд

104


Уже довольно давно удивляюсь тому же, просто мучительно, когда твое мгновенное вождение в стиле фристайл с огненной клопом разлетается на куски в
результате случайной перезагрузки или чего-то еще ....

Для моих намерений и целей я наконец нашел инструмент ....: FireDiff .

Это дает вам новую вкладку, возможно, странную ссылку Дэвида Боуи, называемую «изменения»; который не только позволяет вам видеть / сохранять то, что делал firebug, то есть вы,
но также и опционально отслеживать изменения, сделанные самой страницей ... если она и / или вы так склонны.

Так благодарен за то, что мне не нужно ни вводить заново, ни заново представлять, а затем заново вводить каждое правило css, которое я делаю ...

Вот ссылка на разработчика (не оскорбляйтесь при первом появлении, так же возможно, перейдите прямо в репозиторий дополнений Mozilla) .


Такой маленький инструмент, так много сэкономленных человеко-часов, сегодня мы все победители ;-) Приветствия автору от FireDiff, кажется, он не пересекает воды SO. ToDo:
написать

Автор Кевин Декер. Может быть этот пользователь: stackoverflow.com/users/238459/kevin-decker
Джонатан Паркер

Да именно этот пользователь, так как ссылка на его сайт такая же.
Джонатан Паркер

1
милая богиня это круто.
Джейсон

3
Боже мой, я так взорвался!
Глицерин

15

Web Developer надстройка позволяет вам сохранить изменения. Я хотел бы объединить редактирование Firebug с функцией сохранения веб-разработчика.

альтернативный текст

Используйте « Сохранить кнопку » (выберите меню CSS -> Изменить CSS), чтобы сохранить измененный CSS на диск.

Рекомендация : используйте кнопку « Придерживаться », чтобы предотвратить потерю изменений при переходе на другую вкладку. Если это возможно, используйте только одну вкладку для редактирования, а в другом окне Firefox - связанные запросы, веб-почту и т. Д.


1
Я использую плагин для веб-разработчиков. Но я просто попытался найти вариант и не смог его найти. Как сохранить новые таблицы стилей?
Дин Скорее

Когда я редактирую CSS в Firebug, изменения не синхронизируются с панелью инструментов WebDeveloper «Редактировать CSS». Как вы синхронизируете их?
Герольд Майзингер

13

Я только что выпустил аддон firebug в песочнице аддона Mozilla, который вполне может делать то, что вы хотите: https://addons.mozilla.org/en/firefox/addon/52365/

На самом деле он сохраняет «тронутые» CSS-файлы по запросу на вашем веб-сервере. (путем связи с однофайловым PHP-скриптом -сервиса).

Документация можно найти на моей домашней странице или на странице дополнений

Я был бы признателен за любое тестирование, сообщения об ошибках, комментарии, рейтинги, обсуждение этого вопроса, поскольку он все еще находится в ранней бета-версии, но уже должен работать нормально.


13

CSS-X-Fire

Я удивлен тем, что он до сих пор не указан в этом вопросе, но, вероятно, потому что он новый, и автор еще не успел его продвинуть.

Он называется CSS-X-Fire и является плагином для IDE серии JetBrains: IntelliJ IDEA, PHPWebStorm, PyCharm, WebStorm, RubyMine .

Как это работает: Вы устанавливаете одну из этих IDE и настраиваете развертывание (поддерживает FTP и SCP). Это позволит вам синхронизироваться с сервером.

После этого вы устанавливаете этот плагин. Когда он запустится, он попросит вас сказать, что он установит плагин для Firefox, чтобы сделать интеграцию между Firebug и IDE. Если не удается установить плагин, просто используйте технику перетаскивания, чтобы установить его.

После установки он будет отслеживать все ваши изменения из Firebug, и вы сможете применить их простым щелчком внутри de IDE.

CSS-X-Fire окно внутри IDE.

FireFile

FireFile - это альтернатива, которая требует, чтобы вы добавили один небольшой php-файл на серверную часть, чтобы иметь возможность загружать измененный css.


Хорошая находка! Но мне интересно, есть ли подобный канал между Firebug и другими Mac IDE или редакторами, чем IntelliJ.
Хенрик

@hced Ваше желание было выполнено, проверьте FireFile.
сорин

10

Вы можете связать Firebug с Eclipse с помощью Fireclipse, а затем сохранить файл из Eclipse.


1
Вы можете связать FireBug с затмением? Удивительный! FireBug и Eclipse - основные инструменты, которые я использую в разработке. Я посмотрю на это. Спасибо!
Дин Скорее

9

Я думаю, что ближе всего вы перейдете в режим редактирования в Firebug и скопируете и вставите содержимое файла CSS.


Это было решение, которое я искал ... Я люблю очевидные ответы, которых я никогда раньше не замечал. Ктулу проклинает StackOverflow во всех его обличьях, за безумие, которое он предотвращает.
OhkaBaka

2
БАХ ... это не работает ... это первоисточник ... и он уничтожил все мои изменения.
OhkaBaka

7

Мы только что представили Backfire, движок javascript с открытым исходным кодом, который позволяет сохранять изменения CSS, сделанные в Firebug и Webkit inspector, на сервер. Библиотека включает в себя пример реализации C #, как сохранить входящие изменения в вашем CSS.

Вот сообщение в блоге о том, как это работает: http://blog.quplo.com/2010/08/backfire-save-css-changes-made-in-firebug/

А вот код, размещенный на Google Code: http://code.google.com/p/backfire/


Выглядит потрясающе И для WebKit Web Inspector тоже? Ура!
Jocap

3

Я знаю, что это не отвечает на ваш вопрос, но удивительно, что клон Firebug в Internet Explorer 8 «панель инструментов разработчика» (доступный через F12) предлагает опцию «сохранить html». Эта функция сохраняет текущий DOM в локальном файле, что означает, что если вы каким-либо образом редактируете DOM, например, добавляя атрибут стиля где-то, это тоже будет сохранено.

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


3

Я предлагаю решение, которое включает в себя сочетание Firebug и FireFTP, а также код, который напрямую обращается к локальной файловой системе при локальном запуске веб-сайта.

Вот сценарии:

Работа на веб-сайте, размещенном на удаленной машине

В этом случае вы должны указать подробности FTP, а расположение CSS / HTML / Javascript и Firebug обновят эти файлы при сохранении ваших изменений. Возможно, он даже сможет найти файлы сам, а затем попросит вас проверить, что он имеет правильный файл. Если имена файлов уникальны, это не должно быть проблемой.

Работа на веб-сайте, работающем на вашем локальном компьютере

В этом случае вы можете предоставить Firebug локальную папку на веб-сайте, и то же поведение будет использоваться для сопоставления и проверки файлов. Доступ к локальной файловой системе может быть выполнен через FireFTP при необходимости.

Работа на веб-сайте, размещенном удаленно без доступа по FTP

В этом случае должно быть реализовано что-то вроде дополнения FireFile.


Дополнительной функцией будет возможность сохранять и открывать файлы проекта, в которых хранятся сопоставления между локальными файлами и URL-адресами, с которыми они связаны, а также сохранять подробности FTP, как это делает FireFTP.


Звучит отлично, я попробую!
Дин Скорее

3

Я автор CSS-X-Fire, о котором Сорин Сбарнеа также любезно разместил в этой теме. Думаю, я немного опоздал;)

CSS-X-Fire испускает изменения свойств CSS из Firebug в IDE, где изменения могут быть применены или отменены.

У этого решения есть несколько преимуществ по сравнению с большинством других существующих инструментов, которые знают только имена файлов и контент, загруженный браузером (см. Комментарий NickFitz в оригинальном сообщении).

Сценарий 1. У вас есть веб-сайт (проект), в котором есть несколько тем, из которых пользователь может выбирать. Каждая тема имеет свой собственный CSS-файл, но Firebug известен только один, текущий. CSS-X-Fire обнаружит все подходящие селекторы в проекте и позволит вам решить, какие из них следует изменить.

Сценарий 2. У веб-проекта есть таблицы стилей, созданные во время компиляции или во время развертывания. Они могут быть объединены из нескольких файлов, и имена файлов могут измениться. CSS-X-Fire не заботится об именах файлов, он имеет дело только с именами селекторов CSS и их свойствами.

Выше приведены примеры сценариев, в которых CSS-X-Fire превосходит другие. Поскольку он работает с исходными файлами и знает о структуре языка, он также помогает находить дубликаты, неизвестные Firebug, переход к коду и так далее.

CSS-X-Fire является открытым исходным кодом под лицензией Apache 2. Домашняя страница проекта: http://code.google.com/p/css-x-fire/


3

FireFile

Firebug был создан, чтобы обнаружить проблему не быть отладчиком. но вы можете сохранить изменения, если добавите новый инструмент, который объединяет Firebug с сохранением изменений. это FireFile, нажмите здесь http://thelistoflist.blogspot.com/2010/04/how-to-save-change-you-make-in-firebug.html .

FireFile обеспечивает желаемую функциональность, добавляя небольшой файл PHP на стороне сервера.


2

Поскольку Firebug не работает на вашем сервере, он берет CSS с сайта, сохраняет его локально и показывает сайт с этими локальными изменениями.


2

Используйте редактор CSS на панели инструментов Firefox Web Developer:

http://chrispederick.com/work/web-developer/

У него достаточно хороших вещей, чтобы использовать их вместе с Firebug, и это позволяет вам сохранить свой CSS в текстовом файле.


2

Используйте Backfire.

http://blog.quplo.com/2010/08/backfire-save-css-changes-made-in-firebug/

Это решение с открытым исходным кодом, которое отправляет изменения CSS обратно на сервер и сохраняет их.

Backfire использует один файл javascript, а пакет исходного кода имеет работающий пример реализации сервера .NET, который легко переносится на другие платформы.


2

У меня тоже была эта проблема навсегда, и в конце концов я решил, что мы не должны редактировать что-то в веб-инспекторе, и создал что-то для нее ( https://github.com/viatropos/design.io ).

Лучшее решение:

Браузер автоматически отражает изменения CSS без перезагрузки при нажатии кнопки «Сохранить» в текстовом редакторе .

Основная причина, по которой мы редактируем css в веб-инспекторе (я использую webkit, но FireBug работает по тем же принципам), заключается в том, что нам нужно вносить небольшие корректировки, а перезагрузка страницы занимает слишком много времени.

Есть 2 основных проблемы с этим подходом. Во-первых, вы можете редактировать отдельный элемент, который может не иметь idселектора. Таким образом, даже если бы вы могли скопировать / вставить сгенерированный CSS из веб-инспектора, он должен был бы сгенерировать idобласть действия CSS. Что-то вроде:

#element-127 {
  background: red;
}

Это сделало бы ваш CSS беспорядком.

Вы можете обойти это, только изменив стили для существующего селектора ( .spaceселектор классов на изображении инспектора webkit ниже).

Инспектор Webkit

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

Я бы предпочел просто придерживаться TextMate.

Идеально было бы просто написать CSS в вашем текстовом редакторе и сделать так, чтобы браузер отражал изменения без перезагрузки страницы. . Таким образом, вы будете писать свой окончательный CSS, когда будете вносить небольшие изменения.

Следующим уровнем будет писать на динамическом языке CSS, таком как Stylus, Less, SCSS и т. Д., И обновлять браузер созданным CSS. Таким образом, вы можете начать создавать такие миксины box-shadow(), которые абстрагируют от сложностей, которые веб-инспектор определенно не может сделать.

Есть несколько вещей, которые делают это, но, на мой взгляд, ничего не оптимизирует.

  • LiveReload : передает CSS в браузер без обновления, когда вы нажимаете сохранить, но это приложение для Mac , так что его будет сложно настроить.
  • CodeKit : также приложение для Mac, но оно обновляет браузер при каждом сохранении.

Отсутствие возможности легко настроить способ работы - основная причина, по которой я их не использовал.

Я собрал https://github.com/viatropos/design.io специально для решения этой проблемы и сделал так:

  1. Браузер отображает css / js / html / etc в любое время, когда вы сохраняете, без перезагрузки страницы
  2. Он может обрабатывать любые шаблоны / языки / рамки (Stylus, Less, CoffeeScript, Jade, Haml и т. Д.)
  3. Он написан на JavaScript, и вы можете быстро собрать вместе расширения в JavaScript.

Таким образом, когда вам нужно внести эти небольшие изменения в CSS, вы можете сказать, установить цвет фона, нажать сохранить, увидеть нету, не совсем, отрегулировать оттенок на 10, сохранить, нет, отрегулировать на 5, сохранить, выглядит хорошо.

Это работает путем наблюдения за каждым сохранением файла (на уровне операционной системы), обработки файла (здесь работают расширения) и передачи данных в браузер через веб-сокеты, которые затем обрабатываются (на стороне клиента). расширение).

Не для подключения или что-нибудь, но я боролся с этой проблемой в течение долгого времени задницу.

Надеюсь, это поможет.


1

Firebug работает на вычисленном CSS (тот, который вы получаете, принимая CSS в файлах и применяя наследование и т. Д. Плюс изменения, сделанные с помощью JavaScript). Это означает, что, вероятно, вы не можете использовать его напрямую для включения в файл HTML, который зависит от браузера / версии (если вы не заботитесь только о Firefox). С другой стороны, он отслеживает то, что является оригинальным и что вычисляется ... Я думаю, что не должно быть очень трудно добавить JS в Firebug, чтобы иметь возможность экспортировать этот CSS в текстовый файл.


1
Это не совсем так. Firebug показывает вам все стили, которые применяются к элементу, включая то, откуда они пришли, и просто проходит через них, если они были заменены более конкретным / более поздним / важным правилом. Позволяет менять / добавлять правила на любом уровне. У вас также есть возможность просматривать только вычисленные стили, но по умолчанию отображается все стили.
SpoonMeiser

1

Мне было интересно, почему я не могу чертовски хорошо выбрать и скопировать текст на моих глазах. Особенно, когда другие говорят, что вы можете просто «выбрать и скопировать». Оказывается, вы можете , вам просто нужно начать перетаскивание за пределы. любого текста (то есть в канаву над или слева от текста), как любой mousedown - будь то щелчок или перетаскивание - любой текст немедленно вызывает свойство редактор. Вы также можете щелкнуть вне текста, чтобы получить курсор (даже если он не всегда виден), который затем можно перемещать с помощью клавиш со стрелками и таким образом выделять текст.
К сожалению, текст, скопированный в буфер обмена, не имеет отступов, но, по крайней мере, избавляет вас от ручной расшифровки всего содержимого файла CSS. Просто сделайте так, чтобы ваша программа сравнения игнорировала изменения в пробелах при сравнении с оригиналом.


1

Вы можете написать свой собственный файл сценария сервера, который принимает параметр имени файла и параметр содержимого.

Серверный скрипт найдет запрошенный файл и заменит его содержимое новым.

Написание Javascript, который подключается к информации Firebug и получает полезные данные, будет сложной задачей.

Я бы лично попросил команду разработчиков в firebug предоставить функцию, для них это не должно быть слишком сложно.

Наконец, Ajax отправляет пару имя файла / содержимое в файл php, который вы создали.


1

Цитируется из FAQ по Firebug :

Редактирование страниц

  • Могу ли я сохранить в источнике изменения, которые я внес на веб-страницу, которую я вижу?

    Прямо сейчас ты не можешь. Как писал Джон Бартон в группе новостей:

    Редактировать в Firebug - это все равно, что вынимать маринады и добавлять горчицу в сэндвич: вы можете наслаждаться результатом, но следующий клиент в ресторане все равно получит соленые огурцы и не будет горчицы.

    Это давно запрошенная функциональность, поэтому когда-нибудь она будет доступна прямо из Firebug. Между тем, вы можете попробовать Firediff , расширение для firebug Кевина Декера.

  • Как вывести все изменения, которые были сделаны в CSS сайта в firebug?

    Эта функция реализована в Firediff Кевина Декера .


0

Вот частичное решение. После внесения изменений нажмите одну из ссылок на соответствующий файл. Это оригинальный файл, поэтому вам придется обновить файл, который находится под кнопкой меню параметров в правом верхнем углу панели Firebug. Теперь у вас есть модифицированная CSS-страница, которую вы можете скопировать и вставить. Очевидно, вам придется сделать это для каждого файла CSS.

Редактировать: похоже, Марк Бик имеет более быструю версию


Как насчет объединения: используйте решение Марка Бика для копирования и вставки, но используйте решение Эдуардо Молтени и вставьте его в инструменты разработчика и сохраните. Это то, что я собираюсь сделать сейчас. Было бы хорошо, если бы это было добавлено в FB!
Роб

0

Очень простой способ «отредактировать» свою страницу - перейти на сайт через интернет-браузер. Сохраните страницу как HTML только на свой рабочий стол. Перейдите на рабочий стол и щелкните правой кнопкой мыши новый файл веб-страницы и выберите «Открыть с помощью», выберите «Блокнот» и отредактируйте страницу оттуда, если вы знаете HTML, это будет легко. После того, как все ваши изменения завершены, сохраните файл и снова откройте веб-страницу, изменения должны быть внесены, если все сделано правильно. Затем вы можете использовать новую отредактированную страницу и экспортировать или скопировать ее в удаленное местоположение.


1
Верно, но я думаю, что вопрос в том, как сохранить CSS-файлы с изменениями, внесенными в Firebug.
Хенрик

-4

На самом деле Firebug - это инструмент для отладки и анализа: он не редактор и явно не считается таковым. Другая причина уже упоминалась: как вы хотите изменить CSS, хранящийся на сервере при отладке веб-страницы?


Не уверен, почему за вас проголосовали, но +1 от меня: одна из главных причин, почему люди продолжают спрашивать об этой почти невозможной функции, заключается в том, что они не ценят разницу между отладчиком и редактором.
NickFitz

4
Firebug был создан, чтобы решить проблему не быть отладчиком. Если есть еще одна проблема, требующая решения, то почему ее нельзя добавить в Firebug?
Джонатан Паркер

3
Конечно, Firebug является отладчиком, но почему он позволяет редактировать CSS, например? Кто сказал, что отладчик не должен сохранять результат измененного вывода? У меня сложилось впечатление, что Firebug - это так много для многих людей. Для некоторых главное - использовать отладчик, а также входить и выходить из функций и т. Д., В то время как для некоторых других его способность изменять CSS с помощью оперативного обновления является основной задачей.
Хенрик
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.