...просто обрезать слишком длинные названия?
Тут всё просто. Сначала определяется элемент, к которому будет применен стиль:
toolbarbutton.bookmark-item
В фигурных скобках описывается стиль, который будет к этому элементу применен:
свойство (например, ширина) : значение !important ;
!important означает, что значение этого свойства (если оно уже где-то задано) будет проигнорировано.
Т.е. для обрезания слишком длинных названий надо оставить только это:
toolbarbutton.bookmark-item { max-width: 6em !important; /* максимальная ширина (если шире, то название будет обрезаться) */ }
...чтобы не было многоточий?
По-видимому, никак не сделать... Мне удалось только изменить стандартное обрезание справа («длинное назва...») на слева («...нное название») или по центру («длинное...звание»). При отключении обрезания совсем точки исчезают, но и максимальная ширина больше не работает.
У меня уже был этот файл, я туда вставлял код, чтоб не было надписей в зеленой круглой кнопке.
Тогда нужно просто добавить новый код после уже имеющегося.
К слову о многоточиях при укорачивании названий.
Я взял уже имеющийся binding chrome://global/content/bindings/toolbarbutton.xml
Убрал все про crop и сохранил в папку chrome под именем bm.xml
В userCrome.css добавил
toolbarbutton[id^="rdf:#$"] {
-moz-binding: url(bm.xml#nocropmenu);
}
Ограничение по ширине перестало работать. crop="left" и crop="center" не катят.
Отсюда вопрос: как изменить эффект от crop="right"? (и где он вообще задается?)
Отредактировано Infocatcher (28-07-2007 20:03:18)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
crop="none" + overflow: hidden; в userChrome.css
Увы, не все так просто оказалось...
1. Копирую chrome://global/content/bindings/toolbarbutton.xml в папку chrome профиля (и удаляю внутри все, кроме toolbarbutton и menu).
2. В userChrome.css добавляю
toolbarbutton.bookmark-item { -moz-binding: url(toolbarbutton.xml#toolbarbutton); } toolbarbutton.bookmark-item[type="menu"] { -moz-binding: url(toolbarbutton.xml#menu); }
(Перезапускаю Firefox – пока все работает)
3. Меняю crop="right" на crop="none" – перезапускаюсь – укорачивание надписей перестает работать.
4. Добавляю overflow: hidden;
toolbarbutton.bookmark-item { -moz-binding: url(toolbarbutton.xml#toolbarbutton); overflow: hidden; } toolbarbutton.bookmark-item[type="menu"] { -moz-binding: url(toolbarbutton.xml#menu); overflow: hidden; }
И обычные закладки (не type="menu") заглючивают: иконки растягиваются на все свободное место, а текст поднимается вверх.
Некоторые другие комбинации нужного эффекта также не дают...
Где грабли?
P. S. Самое интересное, что (без уточнений для [type="menu"])
toolbarbutton.bookmark-item { -moz-binding: url(toolbarbutton.xml#toolbarbutton); overflow: hidden; }
дает требуемый способ укорачивания длинных названий, но а) не работают папки и б) заглючивают в плане внешнего вида не только простые закладки, но и папки.
P. P. S. Для ограничения ширины используется
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
...1. Нужно ...
2. Добавить в него строкуВыделить кодКод:
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* set default namespace to XUL */...
Не в этом ли причина иногда возникающих "подвисаний" Огнелиса? Как никак эта строчка означает, что при каждом обращении к сабжу идет обращение к указанному урлу в инете.
Что это значит в плане производительности (сервера проекта в частности) - думаю объяснять нет нужды...
Примечание. Ранее в таких тонких "внутренностях" Лиса не копался.
разве что
toolbarbutton.bookmark-item[type="menu"] { -moz-binding: url(...); overflow: hidden !important; width: 6em !important; } toolbarbutton.bookmark-item:not([type="menu"]) { -moz-binding: url(...); overflow: hidden !important; width: 6em !important; padding: 6px !important; } toolbarbutton.bookmark-item:not([type="menu"]) > .toolbarbutton-text { padding-top: 3px !important; } toolbarbutton.bookmark-item:not([type="menu"]) > .toolbarbutton-icon { max-height: 16px !important; }
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
разве что
Победим, но мы пойдем путем другим (или как там)?
Работает, только имена папок не укорачиваются (даже если вернуть crop="right")...
И лучше
max-width: 6em !important;
вместо
width: 6em !important;
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Infocatcher, ты разобрался с этим?
Получилось?
И чо вставлять надо?
Получилось?
Только для закладок (для папок не удалось) – и то не очень. Нужный способ укорачивания названий получился, но внешний вид пострадал – пришлось «подкручивать».
И чо вставлять надо?
1. В файл userChrome.css надо добавить:
/* Обрезка названий закладок на панели закладок без многоточий в конце */ toolbarbutton.bookmark-item:not([type="menu"]) { -moz-binding: url(bmPanel.xml#bookmarkToolbarbutton); overflow: hidden !important; padding-top: 4px !important; } /* Исправляем внешний вид... */ toolbarbutton.bookmark-item:not([type="menu"]) > .toolbarbutton-text { padding-top: 3px !important; } toolbarbutton.bookmark-item:not([type="menu"]) > .toolbarbutton-icon { max-height: 16px !important; } /* Обрезаем слишком длинные названия на панели закладок */ toolbarbutton.bookmark-item { max-width: 6em !important; }
2. В папке chrome профиля (т.е. там же, где и userChrome.css) нужно создать текстовый файл bmPanel.xml с вот таким содержимым:
<?xml version="1.0"?> <bindings id="boolmarksPanelBindings" xmlns="http://www.mozilla.org/xbl" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:xbl="http://www.mozilla.org/xbl"> <binding id="bookmarkToolbarbutton" display="xul:button" extends="chrome://global/content/bindings/button.xml#button-base"> <resources> <stylesheet src="chrome://global/skin/toolbarbutton.css"/> </resources> <content> <children includes="observes|template|menupopup|tooltip"/> <xul:image class="toolbarbutton-icon" xbl:inherits="validate,src=image,toolbarmode,buttonstyle"/> <xul:label class="toolbarbutton-text" crop="none" flex="1" xbl:inherits="value=label,accesskey,crop,toolbarmode,buttonstyle"/> </content> </binding> </bindings>
Отредактировано Infocatcher (02-08-2007 13:50:52)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Спасибо большое. Я уверен, что наши наработки должны быть введены в файрфокс Вики. Кстати, где она?
Не совсем чотко выразился. "Ваши наработки."
Есть подписка на RSS новости см картинку, но ширина столбца закладок мала, и не прочитать заголовок до конца,
1. Как можно расширить этот столбец?
2. Можно ли править userChrome.css с помощью встроенного блокнота в Виндах ХР
P.S. FireFox 3.0.5
Спасибо
1. Как можно расширить этот столбец?
http://forum.mozilla-russia.org/viewtopic.php?id=25735
2. Можно ли править userChrome.css с помощью встроенного блокнота в Виндах ХР
Можно.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Спасибо Infocatcher очень оперативно!!!
Вставил :
/* set default namespace to XUL */ @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); menuitem.bookmark-item { max-width: none !important; } menuitem.bookmark-item > hbox > .menu-iconic-accel { display: none !important; }
Перезагрузил FireFox и ни чего ..... ?
Перезагрузил FireFox и ни чего ..... ?
Инструменты – Консоль ошибок
alert(Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get("ProfD", Components.interfaces.nsIFile).path);
(скопировать в текстовое поле и нажать «Проанализировать»)
Это папка профиля.
Далее – chrome\userChrome.css
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Спасибо Infocatcher, разобрался исправлял:
C:\Program Files\Mozilla Firefox\defaults\profile\chrome
а надо было сначала, как вы написали определить папку профиля:
Инструменты – Консоль ошибок
alert(Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get("ProfD", Components.interfaces.nsIFile).path);
Не подскажете как отцентрировать окно добавления в закладки.
Использовал в userChrome.css следующий код для "расширения" окна закладок:
И в результате окно расширилось только в левую сторону.
Как разместить его по-центру экрана?
(экспериментирую с Лисой 3.5.5. Вот из-за всяких таких косяков и недоработок до сих пользую 2-ю версию)
Отсутствует