Задать вопрос
@0ldn0mad

Ошибка в самописной функции php?

Добрый вечер.

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

<?php
	function drawMenu($menu, $vertical=true)
	{
		$style = "";
		if (!$vertical)
			$style = " style='display:inline, margin-right: 15px'";
		echo "<ul>";
		foreach ($menu as $value) {
			echo "<li$style>";
			echo "<a href='{$value['href']}'>{$value['link']}</a>";
			echo "</li>";
		}
		echo "</ul>";
	}

?>

<?php
	  $leftMenu = [
	  	  ['link'=>'Домой', 'href'=>'index.php'],
		  ['link'=>'О нас', 'href'=>'about.php'],
		  ['link'=>'Контакты', 'href'=>'contact.php'],
		  ['link'=>'Таблица умножения', 'href'=>'table.php'],
		  ['link'=>'Калькулятор', 'href'=>'calc.php']
	    ];
?>

<?php
		drawMenu($leftMenu);
?>

<?php
	    drawMenu($leftMenu, false);
?>
  • Вопрос задан
  • 129 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 2
Vlad_IT
@Vlad_IT Куратор тега HTML
Front-end разработчик
Стили CSS пишутся через ; а не запятую. Исправите вот эту строку
$style = " style='display:inline, margin-right: 15px'";

на эту
$style = " style='display:inline; margin-right: 15px'";
Ответ написан
PavelK
@PavelK
Вечер добрый.
Перечисление стилей должно быть через точку запятой:
style='display:inline; margin-right: 15px;'
И лучше всё таки стили выносить в css файл, а не инлайном - это дурной тон.
И на будущее - если что-то со стилями или разметкой, то проверять лучше всего в консоли разработчика, которая встроена в браузер (хоткей F12)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы