Всем привет! Если кто-нибудь сталкивался с подобной проблемой, просьба откликнуться. Речь идет о встроенном модуле file в Drupal 7. При загрузке разного рода файлов, к каждому (распространенному) расширению присваивается соответствующая иконка, но вот для расширения файлов djvu («дежа-вю») иконок нет. Иконки лежат по пути: modules/file/icons. Необходимый код, соответственно в файлах модуля file. Помогите решить проблему. Спасибо.
Комментарии
css?
Скорее нет.
Через css подобную проблему недавно решил.
Интересно. Можно подробнее?
firebug
Скрываешь стандартную иконку файла через css.
Потом типо так:
background: url("images/exel.png") no-repeat scroll 0 0 transparent;
padding: 0 0 0 18px;
}
Картинка вставляется именно для djvu расширения файла в url. Спасибо!
background: url("/modules/file/icons/djvu-file.png") no-repeat scroll 0 0 transparent;
display: inline;
padding-left: 20px;
line-height: 15px;
}
Только вот никак не получается скрыть стандартную иконку, которая лежит: /modules/file/icons/image-x-generic.png. Она присваивается "незнакомым" расширениям файлов. Как ее скрыть для .djvu расширения?
Кстати, 6 ослик не понимает a[href$=""]... Печально..., что им еще кто то пользуется)
display: none;
На такой простой вопрос я вам не могу ответить, используйте firebug, он вам все покажет
Firebug’ом я пользуюсь около года
На самом деле вопрос далеко не простой. Здесь получается скрыть только тег img, а это означает, что все иконки будут скрыты, потому как в тег img система вставляет картинку соответствующую закачиваемому расширению. Если формат pdf – картинку с pdf. Если html, значит картинку html… Но в разметке это всегда тег img и путь src=”путь”. Поэтому, либо есть все картинки, либо их нет вообще: «display: none;». Либо CSS позволяет скрыть картинку, определяя ее на основании заданного пути (может это в CSS3 есть?)
Вижу два решения. 1-е, это переделать иконку (не изменяя имени), которая присваивается «неизвестным» расширениям на иконку соответствующую расширению .djvu. Это в том случае, если не предполагается использование других «неизвестных» расширений файлов (иначе им тоже присвоится иконка расширения djvu).
2-е решение – это использовать стили для каждого расширения, а стандартные иконки скрыть. Например:
display: none;
}
span.file a[href$=".djvu"] {
background: url("/modules/file/icons/djvu.png") no-repeat scroll 0 0 transparent;
display: inline;
padding-left:20px;
line-height:15px;
}
span.file a[href$=".pdf"] {
background: url("/modules/file/icons/pdf.png") no-repeat scroll 0 0 transparent;
display: inline;
padding-left:20px;
line-height:15px;
}
span.file a[href$=".html"] {
background: url("/modules/file/icons/html.png") no-repeat scroll 0 0 transparent;
display: inline;
padding-left:20px;
line-height:15px;
}
span.file a[href$=".txt"] {
background: url("/modules/file/icons/txt.png") no-repeat scroll 0 0 transparent;
display: inline;
padding-left:20px;
line-height:15px;
}
Вам спасибо за подсказку с a[href$="…"].
Какой css именно правили?
/modules/file/file.css
Правьте в css своей темы, а не в ядре.
Спасибо!