Jump to content
  • 0

Непонятные вертикальные отступы передед дивом


Воитель
 Share

Question

1.jpgПотратил больше часа, на поиск ошибки, но так и не смог найти.

Суть в том, что между дивами образуются отпступы по вертикали как будто margin-top: указан. Но на самом деле его нет.


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns:vml="urn:schemas-microsoft-com:vml">
<!-- Для Яедекс карты -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<META name="description" content="Детские игровые комплексы">
<META name="keywords" content="Детские игровые комплексы">
<title>Детские игровые комплексы</title>
<link rel="stylesheet" type="text/css" href="sostav/style.css" />
<link rel="stylesheet" type="text/css" href="sostav/style_admin.css" />
<link rel="shortcut icon" href="glavdising/favicon.ico" />
<link rel="stylesheet" href="./sostav/lightbox_2_04/css/lightbox.css" type="text/css" media="screen" />
<script type="text/javascript" src="./sostav/js_rabota_s_cookies.js"></script>
<script type="text/javascript" src="./sostav/lightbox_2_04/js/prototype.js"></script>

<script type="text/javascript" src="./sostav/lightbox_2_04/js/scriptaculous.js?load=effects,builder"></script>
<script type="text/javascript" src="./sostav/lightbox_2_04/js/lightbox.js"></script>
</head>
<body>
<div style="width:80%; padding-top:30px; padding-left:10%; padding-right:10%; padding-bottom:40px">


<div style="float:right; width:200px;">
<a href="./adminochka_glavnaya.php"><h4 style="color:#FFFF00">Главная</h4></a><br />
<a href="./adminochka_orders.php"><h4 style="color:#FFFF00">Заказы</h4></a><br />
<a href="./korzina.php"><h4 style="color:#FFFF00">Корзина</h4></a><br />
<a href="./papka.php?nomer_papki=2"><h4 style="color:#FFFF00">Продукция</h4></a><br />

?<div><a class="a_bokovaya_navigaciya_produkcii_razdel" href="./papka.php?nomer_papki=104">Детские игровые комплексы</a></div>
?<div style="margin-left:10px; margin-top:5px"><a class="a_bokovaya_navigaciya_produkcii_podrazdel" href="./papka.php?nomer_papki=105">Детские игровые комплексы</a></div>
?<div style="margin-left:20px; margin-top:5px"><a class="a_bokovaya_navigaciya_produkcii_podrazdel" href="./papka.php?nomer_papki=106">Детские игровые комплексы</a></div>
</div>

Вывожу этот html я через php:


//file создаёт массив в каждом элементе которого строка файла а implode объеденяет все элементы массива в 1 строку. Это правильный вариант получения содержимого файла.
$soderjimoe_fayla_verh[] = implode('', file ('./production/templates/production_01/navigaciya_po_produkcii_g.html'));

$soderjimoe_fayla_verh[] = implode('', file ('./production/templates/production_01/navigaciya_po_produkcii_gg.html'));
$massiv_poiska = array("[IMYA]","[NOMER_PAPKI]","[UROVEN_VLOJENNOSTI]");

vivod_dochernih_papok("2", 0, $soderjimoe_fayla_verh, $massiv_poiska);

function vivod_dochernih_papok($nomer_papki, $level, $soderjimoe_fayla_verh, $massiv_poiska) { //Две переменные венесены за функцию для оптимизации

$sql='SELECT nomer_papki, imya FROM `papki` WHERE nomer_roditelskoy_papki='.$nomer_papki;
$result=mysql_query($sql) or die(mysql_error());

while($row=mysql_fetch_array($result, MYSQL_BOTH)) {
//echo $row['imya'];
if ($level >= count($soderjimoe_fayla_verh)) { $uroven_vlojennosti = count($soderjimoe_fayla_verh)-1; }
else { $uroven_vlojennosti = $level; }

$massiv_zameni = array($row['imya'],$row['nomer_papki'],$level);

$obekt_v_shablone = str_replace($massiv_poiska, $massiv_zameni, $soderjimoe_fayla_verh[$uroven_vlojennosti]);

echo $obekt_v_shablone;
vivod_dochernih_papok($row['nomer_papki'], $level+1, $soderjimoe_fayla_verh, $massiv_poiska);
}
} //Закрытие function vivod_dochernih_papok(

Содержимое шаблонов:

<div><a class="a_bokovaya_navigaciya_produkcii_razdel" href="./papka.php?nomer_papki=[NOMER_PAPKI]">[IMYA]</a></div>

и

<div style="margin-left:[UROVEN_VLOJENNOSTI]0px; margin-top:5px"><a class="a_bokovaya_navigaciya_produkcii_podrazdel" href="./papka.php?nomer_papki=[NOMER_PAPKI]">[IMYA]</a></div>

Соотвествующий css всему этому делу выглядит так:


.a_bokovaya_navigaciya_produkcii_razdel {
text-decoration: none;
font-size:16px;
font-weight:600;
}
.a_bokovaya_navigaciya_produkcii_razdel:visited { color:#FFFFFF; }
.a_bokovaya_navigaciya_produkcii_razdel:hover { color:#FFCC00; }

.a_bokovaya_navigaciya_produkcii_podrazdel {
text-decoration: none;
}
.a_bokovaya_navigaciya_produkcii_podrazdel:visited { color:#FFFFFF; }
.a_bokovaya_navigaciya_produkcii_podrazdel:hover { color:#55D0FF; }

А на экране всё почему-то не так как в коде. Причёт в FF и в Chome с отступами а в IE всё как надо.

Удалось установить что вся соль в дивах. Т.е. если убрать тег див и оставить всё просто ссылками то отступы пропадут. Вроде они пропадают и при выводе не через шаблон.

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Воитель,

Ссылку бы на проблемную страницу...

К сожалению не могу предоставить ссылку, всё делается на локали.

Попробуй body поставить line-height: 1; и сброс стилей добавь * {margin: 0; padding: 0;}

Сброс стилей уже стоял. а line-height: 1; не помогло. Растояние конечно приуменьшилось, но не дало желаемого результата.

Link to comment
Share on other sites

  • 0

К сожалению не могу предоставить ссылку, всё делается на локали.

Ну так залейте куда-нибудь, хоть статичную страницу, хоть отдельно проблемный участок. Это в ваших же интересах.

Link to comment
Share on other sites

  • 0

Добавлю некоторые свои наблюдения, что есть текст выводить не через шаблон, т.е. не через чтение файла, то всё отображается нормально. Поэтому наверно всё же дело не в вёрстке а в php. Хотя в шаблоне просатривал все скрытые символы - ни чего нет, кроме перехода на новую строку. И ещё один момент, если в шаблоне не блочный элемент, то тоже всё хорошо выводиться.

Edited by Воитель
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy