Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
 Аватар для NekoKira
62 / 49 / 37
Регистрация: 08.07.2012
Сообщений: 181

Вылет из тега

14.04.2015, 07:29. Показов 1291. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Возникла проблема с PHP кодом

HTML5
1
2
3
4
5
6
7
8
9
10
<?php if($params->get('itemImage') || $params->get('itemIntroText')): ?>
      <div class="moduleItemIntrotext item">
 
        <a href=""> //тут собственно проблема
    
<?php if($params->get('itemTitle')): ?>
        <div class="moduleItemTitle"><a href="<?php echo $item->link; ?>"><strong><?php echo $item->title; ?></strong></a></div>
      <?php endif; ?>
 
        </a>
На выводе я получаю следующее:


Подскажите пожалуйста, почему происходит вылет из тега
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.04.2015, 07:29
Ответы с готовыми решениями:

Добавление значение тега при соответствии условию другого тега (HtmlAgilityPack)
На странице html содержится текст (элемент коллекции HtmlNodeCollection) &lt;div class=&quot;wrapper&quot;&gt; &lt;a...

В соответствии со значением конкректного тега, задать стили для предшествующего тега
Кусок html-кода: &lt;ul class=&quot;ul&quot;&gt; &lt;li class=&quot;li&quot;&gt; &lt;label&gt;&lt;/label&gt; &lt;span&gt;&lt;/span&gt; ...

Смогу ли я получить доступ к переменной данного тега из другого тега script?
если я в одном теге script объявлю переменную с именем mymap,то смогу ли я получить доступ к этой переменной из другого тега script. ...

7
601 / 468 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
14.04.2015, 09:02
очевидно, потому что
PHP
1
$params->get('itemTitle') == false

Не по теме:

именно ==, а не === . то есть там может быть пустая строка или 0, или даже строка '0'

0
 Аватар для NekoKira
62 / 49 / 37
Регистрация: 08.07.2012
Сообщений: 181
14.04.2015, 09:17  [ТС]
NEbO, спасибо за ответ!)

Но тут проблема в другом!

Кликните здесь для просмотра всего текста
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<a href=""> //ПРОБЛЕМА ТУТ
 
      <?php if($params->get('itemImage') || $params->get('itemIntroText')): ?>
      <div class="moduleItemIntrotext item">
   
<?php if($params->get('itemTitle')): ?>
        <div class="moduleItemTitle"><a href="<?php echo $item->link; ?>"><strong><?php echo $item->title; ?></strong></a></div>
      <?php endif; ?>
        
          <?php if($params->get('itemImage') && isset($item->image)): ?>
          <a class="moduleItemImage" href="<?php echo $item->link; ?>" title="<?php echo JText::_('K2_CONTINUE_READING'); ?> &quot;<?php echo K2HelperUtilities::cleanHtml($item->title); ?>&quot;"><div class="img-box">
            <img src="<?php echo $item->image; ?>" alt="<?php echo K2HelperUtilities::cleanHtml($item->title); ?>"/></div>
          </a>
<?php endif; ?>
                 
        <?php if($params->get('itemIntroText')): ?>
        <?php $a = $item->introtext; ?>
        <?php $b = explode(">", $a) ?>
        <p class="old-prise"><?php echo $b[0] ?></p>
        <p class="new-prise"><?php echo $b[1] ?></p>
        <div class="clearfix"></div>
        
        <?php unset($b[0])?>
        <?php unset($b[1])?>
        <?php $te = implode(" ",$b); ?>
        
        <p><?php echo $te ?></p>
        <?php endif; ?>
      </div>
      <?php endif; ?>
</a>


То получается тоже самое...
и всё что должно быть в <a></a>, вылетает в низ, из него!
0
601 / 468 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
14.04.2015, 09:27
Лучший ответ Сообщение было отмечено NekoKira как решение

Решение

а, понял. просто нельзя вкладывать в тег a тег div. в общем случае, нельзя в строчный тег вкладывать блочный, это запрещено стандартами, а браузеры обрабатывают это как хотят.
посмотрите в исходный код сгенерированной страницы (не в инспекторе, а просто "показать исходный код"). если там все в порядке, значит проблема именно в этом
1
 Аватар для NekoKira
62 / 49 / 37
Регистрация: 08.07.2012
Сообщений: 181
14.04.2015, 09:50  [ТС]
NEbO, Большое спасибо ^_^

Если Вам не трудно, то можете помочь еще в двух вещах?)

1) Попробывал в CSS прописать <a> - "display: block", но видать не всё так просто)
Можно ли как-то преобразовать <a> в block или нужно переделывать всё?

2) После всех "div'ов", перед "</body>" не могу вставить "clearfix", точнее вставить могу, но когда конструктор генерирует код, то "div'ка" с "clearfix" просто исчезает, да и вообще, вроде не важно что написать, оно пропадает!
уже устал мучатся с этими горе-конскрукторами, там всё не как у людей...
0
601 / 468 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
14.04.2015, 10:08
Цитата Сообщение от NekoKira Посмотреть сообщение
Попробывал в CSS прописать <a> - "display: block", но видать не всё так просто)
нужно наоборот, все вложенные div-ы, p-теги, и вообще все блочные элементы сделать, например, span-ами. а к ним уже применять display: block.
есть парсер html-я, он работает отдельно от css. и им вы задаете структуру. браузер видит, что вы не закрыли строчный элемент, а начинаете блочный -- и все, он его автоматически закрывает. css он будет парсить уже потом, для того, чтобы эту страницу показать. а вот иерархию элементов он построит исключительно по тегам в html-е.

Цитата Сообщение от NekoKira Посмотреть сообщение
"div'ка" с "clearfix" просто исчезает
к сожалению, я не супер-пупер верстальщик, и не помню, зачем вообще нужно перед </body> clear: both, по-моему, отображаться оно будет одинаково.
но, конечно же, тег все равно есть тег, просто так он пропасть не может. Вероятно, что это как-то связано с предыдущей проблемой, что браузер неправильно построил DOM.
поэтому, попробуйте исправить сначала эту "неправильную" вложенность, а затем(или по ходу дела) проверяйтесь с помощью сервиса http://validator.w3.org/ (если используете html5, вероятно, вам поможет https://html5.validator.nu/). Это просто тест на соответствие стандартам, заодно проверяет вложенность тегов и т.п.
1
 Аватар для NekoKira
62 / 49 / 37
Регистрация: 08.07.2012
Сообщений: 181
14.04.2015, 13:29  [ТС]
NEbO
1) Спасибо, буду лепить)
2) мне нужно было перед самым последним div-ом cleafix поставить, чтобы BG растянулся, а то у меня элементы из потока вывалились! Скорее всего Вы правы, это из-за не правильной сборки тегов

Огромное спасибо за помощь и отлично поставленные ответы!

Добавлено через 1 час 21 минуту
NEbO
Цитата Сообщение от NEbO Посмотреть сообщение
а, понял. просто нельзя вкладывать в тег a тег div
Наверное проблема из-за PHP кода, потому что HTML просмотрел, вроде все нормально!
И вот такая конструкция работает у меня работает
HTML5
1
2
3
4
5
<a id="test" href="/">
<p>Test1</p>
<div class="block"></div> //DIV внутри
<p>Test2</p>
</a>
Добавлено через 1 час 42 минуты
NEbO, Всё-таки косяк был в PHP, переписал кусок, половина стала работать, так что дело за малым!)
Еще раз спасибо за помощь!
0
 Аватар для NekoKira
62 / 49 / 37
Регистрация: 08.07.2012
Сообщений: 181
16.04.2015, 06:43  [ТС]
Для тех, кто такой же краб как я... ^_^

В общем я фактический пытался обернуть ссылку в ссылку, а это не возможно)
HTML5
1
2
3
<a>
   <a></a>
</a>
Кликните здесь для просмотра всего текста
HTML5
1
2
3
4
5
6
7
<a href=""> //тут собственно проблема
    
<?php if($params->get('itemTitle')): ?>
        <div class="moduleItemTitle"><a href="<?php echo $item->link; ?>"><strong><?php echo $item->title; ?></strong></a></div>
      <?php endif; ?>
 
        </a>

Когда заметил, понял что краб))
Надеюсь кому-нибудь поможет)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.04.2015, 06:43
Помогаю со студенческими работами здесь

Как выводить описание тега в шаблоне страницы с материалами тега?
Подскажите пожалуйста, как выводить описание тега в шаблоне страницы с материалами тега? При добавлении кода вызова описания &lt;?php...

Нужно сделать, чтобы значение атрибута тега отображался внутри этого тега
Как сделать чтобы html-код &lt;div class=&quot;item&quot;&gt;text&lt;/div&gt; отображался примерно вот так: del Изображения и любые другие файлы...

Нахождение содержимого тега A, без тега а и параметров
Здравствуйте. Не могу решить вот такую задачку: Есть ссылки следующего вида: &lt;a...

Получение ссылки из тега внутри другого тега
Есть текст такого вида (пример): &lt;div class=&quot;group_row_labeled&quot;&gt;&lt;a href=&quot;http://vk.com/baraholka&gt;&lt;b&gt;БАРАХОЛКА| РАБОТА...

Скрипт идентификации тега внутри другого тега
Всем привет! Помогити пожалуйста. Есть такая структура &lt;span class=&quot;sub-item&quot; &gt; &lt;a...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru