В модуле переключения языков значки языков по-умолчанию расставляются с зазором в 4 пиксела по горизонтали, пример: . Подскажите, плиз, как убрать этот зазор? И второй вопрос: по-умолчанию значки не реагируют на наведение мыши. Как сделать так, чтобы в пассивном состоянии у значка была одна картинка, а при наведении мыши менялась бы на другую?
Думаю надо в стили лезть, копаться. В частности посмотреть какие у данных элементов значения padding и margin. Если они конкретно у них не прописаны, то прописать. 2-й вопрос видимо псевдоклассом hover решается: https://webref.ru/css/hover
Из интернета нашел, что стиль редактируется в файле \media\mod_languages\css\template.css (исходный код такой): Код (css): div.mod-languages ul { margin: 0; padding: 0; list-style:none; } div.mod-languages li { margin-left: 5px; margin-right: 5px; } div.mod-languages ul.lang-inline li { display:inline; } div.mod-languages ul.lang-block li { display:block; } div.mod-languages img { border:none; } div.mod-languages a { text-decoration: none; } я заменил его на такой: Код (css): div.mod-languages ul { margin: 0; padding: 0; list-style:none; } div.mod-languages li { margin-left: 0px; margin-right: 0px; } div.mod-languages li.lang-active { margin-left: 0px; margin-right: 0px; } div.mod-languages ul.lang-inline li { display:inline; margin-left: 0px; margin-right: 0px; } div.mod-languages ul.lang-block li { display:block; margin-left: 0px; margin-right: 0px; } div.mod-languages img { border:none; margin-left: 0px; margin-right: 0px; hspace: 0px; vspace: 0px; } div.mod-languages a { text-decoration: none; margin-left: 0px; margin-right: 0px; } div.mod-languages a:hover { border: 2px solid #f00; // Устанавливаем красную рамку text-decoration: none; margin-left: 0px; margin-right: 0px; } и максимум чего добился, это красной рамки при наведении на значок языка, при этом рамка не соответствует значку ( ) Подмена .gif значков языков по-умолчанию на нужные мне .jpg выполняется редактированием файла modules\mod_languages\tmpl\default.php. Вот его текст, в котором ".gif" подменен на ".jpg" (строчка 34): Код (PHP): <?php /** * @package Joomla.Site * @subpackage mod_languages * @copyright Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt */ // no direct access defined('_JEXEC') or die('Restricted access'); JHtml::_('stylesheet', 'mod_languages/template.css', array(), true); ?> <div class="mod-languages<?php echo $moduleclass_sfx ?>"> <?php if ($headerText) : ?> <div class="pretext"><p><?php echo $headerText; ?></p></div> <?php endif; ?> <?php if ($params->get('dropdown', 1)) : ?> <form name="lang" method="post" action="<?php echo htmlspecialchars(JURI::current()); ?>"> <select class="inputbox" onchange="document.location.replace(this.value);" > <?php foreach($list as $language):?> <option dir=<?php echo JLanguage::getInstance($language->lang_code)->isRTL() ? '"rtl"' : '"ltr"'?> value="<?php echo $language->link;?>" <?php echo $language->active ? 'selected="selected"' : ''?>> <?php echo $language->title_native;?></option> <?php endforeach; ?> </select> </form> <?php else : ?> <ul class="<?php echo $params->get('inline', 1) ? 'lang-inline' : 'lang-block';?>"> <?php foreach($list as $language):?> <?php if ($params->get('show_active', 0) || !$language->active):?> <li class="<?php echo $language->active ? 'lang-active' : '';?>" dir="<?php echo JLanguage::getInstance($language->lang_code)->isRTL() ? 'rtl' : 'ltr' ?>"> <a href="<?php echo $language->link;?>"> <?php if ($params->get('image', 1)):?> <?php echo JHtml::_('image', 'mod_languages/'.$language->image.'.jpg', $language->title_native, array('title'=>$language->title_native), true);?> <?php else : ?> <?php echo $params->get('full_name', 1) ? $language->title_native : strtoupper($language->sef);?> <?php endif; ?> </a> </li> <?php endif;?> <?php endforeach;?> </ul> <?php endif; ?> <?php if ($footerText) : ?> <div class="posttext"><p><?php echo $footerText; ?></p></div> <?php endif; ?> </div> Подскажите, плиз, как отредактировать эти файлы, чтобы получить то, что написано в первом моем сообщении.
У тебя в модуле прописан вывод картинок,а не в стилях фоном картинка,которую можно заменить :hover . Копай в сторону переопределения шаблона модуля и потом яваскрипт или jquery, для замены картинки.