Jump to content
  • 0

Выравнивание как проблема верстки


Question


Какой раз я сталкиваюсь с проблемой: если в одном месте вставишь элемент (рисунок, текст), то в каком-то другом месте происходит выталкивание других элементов. Как обойти эту проблему в коде, для того чтобы рисунки (иконки) располагались слева от пунктов меню Каталог товаров (и чтобы пункты меню типа Крупная техника для кухни, Крупная техника для дома располагались по центру блоков):
 
<html>
<head>
<link rel="stylesheet" href="mysite.css">
</head>
<body>
<div class="mainwrap">
  <div class="mainmenu">
    <span>
                <span>
                    <button data-toggle="dropdown" data-target="#menu" class="hamburger animated fadeInLeft noclose is-open" type="button">
                    <span class="hamb-top"></span>
    <span class="hamb-middle"></span>
    <span class="hamb-bottom"></span>
    </button>
    </span>
    <span><div class="label menu-label" id="myelement">КАТАЛОГ ТОВАРОВ</div></span>
    </span>

    <nav class="menu">
      <ul class="level1">
        <li id="l1">
          <div class="alignblock">Бытовая техника для кухни</div>
          <ul class="level2">
            <li class="submenu">
              <ul>
                <li class="submenu__title">
                  <a href="#">Крупная бытовая техника</a>
                </li>
                <li class="submenu__item">
                  <a href="#">Холодильники</a>
                </li>
                <li class="submenu__item">
                  <a href="#">Морозильные камеры</a>
                </li>
                <li class="submenu__item">
                  <a href="#">Морозильные лари</a>
                </li>
                <li class="submenu__item">
                  <a href="#">Плиты газовые </a>
                </li>
              </ul>

              <ul>
                <li class="submenu__title">
                  <a href="#">New title</a>
                </li>
                <li class="submenu__item">
                  <a href="#">Холодильники</a>
                </li>
                <li class="submenu__item">
                  <a href="#">Морозильные камеры</a>
                </li>
                <li class="submenu__item">
                  <a href="#">Морозильные лари</a>
                </li>
                <li class="submenu__item">
                  <a href="#">Плиты газовые </a>
                </li>
              </ul>
            </li>
          </ul>
        </li>
        <li id="l2">
          <div class="alignblock">Item 2</div>
        </li>
        <li id="l3">
          <div class="alignblock">Item 3 +</div>
          <ul class="level2">
            <li>Sub-Item 3-1</li>
            <li>Sub-Item 3-2</li>
            <li>Sub-Item 3-3</li>
            <li>Sub-Item 3-4</li>
            <li>Sub-Item 3-5</li>
            <li>Sub-Item 3-6</li>
            <li>Sub-Item 3-7</li>
            <li>Sub-Item 4-8</li>
		  </ul>
        </li>
        <li id="l2">
          <div class="alignblock">Item 4</div>
        </li>
        <li id="l2">
          <div class="alignblock">Item 5</div>
        </li>
        <li id="l2">
          <div class="alignblock">Item 6</div>
        </li>
      </ul>
    </nav>
  </div>

</div>
</body>
</html>
.menu {
  position: relative;
  width: 370px;
}

.menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.menu li {
  padding: 0.5em 0 0.5em 0.3em;
  cursor: pointer;
}

ul.level1 {
  border: 1px solid thistle;
}

ul.level1>li {
  background-color: #fff;
  border-bottom: 1px solid thistle;
}

ul.level1>li:last-child {
  border-bottom: none;
}

ul.level2 {
  position: absolute;
  top: -35px;
  left: 100%;
  max-width: 559px;
  max-height: 1010px;
  padding: 0.5em 0.3em 0.5em 0.3em;
  background-color: #fff;
  border: 1px solid thistle;
  visibility: hidden;
  white-space: nowrap;
  column-count: 2;
}

ul.level2>li {
  padding: 0;
  border-bottom: 1px solid #fff;
}

ul.level2>ul>li {
  padding: 0;
}

ul.level2>li>ul>li {
  padding: 0;
}

ul.level1>li:hover ul.level2 {
  visibility: visible;
}

.menu a {
  color: #333;
}

.alignblock {
  text-align: center;
  vertical-align: middle;
}

.submenu__title {
  margin-bottom: 5px;
}

.submenu__title a {
  display: block;
  color: black;
  font: 13px Roboto, Tachoma, Arial, sans-serif;
  /* line-height: 1.5; */
  text-decoration: none;
  padding: 3px 5px;
}

.submenu__item {
  /* margin-bottom: 0px; */
}

.submenu__item a {
  display: block;
  color: gray;
  font: 13px Roboto, Tachoma, Arial, sans-serif;
  text-decoration: none;
  padding: 3px 5px;
}

Вот как пример
 

catalog.png

Screenshotimg.png

Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Ничего не понятно. 
Выталкивает и выталкивает. 

Делайте нормальный пример в любой из песочниц, например jsfiddle, а не кусками кода. 

Link to post
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.

  • 11 Опрос

    You do not have permission to vote in this poll, or see the poll results. Please sign in or register to vote in this poll.
  • Обсуждения

    • Здравствуйте. Вот этот код отвечает за цвет линии: .col-2 { border-left: 4px solid #a0a0a0; // цвет границы margin-left: -1px; padding-left: 20px; }  
    • сам ещё учусь... поковырялся. цвет меняется , но .col-2 накрывает (налезает) на .col-1
    • суть вкладок такая же может быть, код скрипта нужно править, сейчас все вкладки у вас будут подгружать один и тот же iframe   <span class="address-link" data-target-id="target-div" data-target="http://site.ru/page1/">вкладка1</span> <span class="address-link" data-target-id="target-div" data-target="http://site.ru/page2/">вкладка2</span> <div id="target-div"></div>   $('.address-link').click(function(){    var targetId = $(this).data('target-id');    var target = $(this).data('target');    $('#' + targetId).html('<iframe src="'+target +'"></iframe>');  }); Не понятно что за скрипты вы планируете грузить, по сути ни чего не мешает грузить скрипты, и даже iframe через скрипты
    • Обновить пример и получить результат:
    • Помогите если кто знает. Задача такая - на сторонней cms нужно найти кусок кода из описания и добавить его в поле meta-description. Описание товаров забивается макросом %contents% но этот макрос добавляет все описание, характеристики, цену и т.д нужный кусок кода с описанием выгдлядит так: <div id="item-description" class="item-passage"> <div class="item-description" itemprop="description"> <p class="b-user-content" data-extend="FlexibleTable" itemprop="description"> FM-трансмиттер предназначен для воспроизведения музыкальных файлов с карт памяти microSD и USB накопителей и трансляции звука на приёмник в автомобиле. Питается устройство от гнезда прикуривателя 12В. В комплекте поставляется дистанционный ИК-пульт для управления трансмиттером. AFM-L-01 ... </p> </div> </div> можно ли как то с помощью CSS возможно зафиксировать его в поле description??
×
×
  • 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