ASP.NET рекламный сайт - PullRequest
       14

ASP.NET рекламный сайт

3 голосов
/ 24 декабря 2008

Я сейчас работаю над сайтом, который является рекламным порталом для бизнеса. Рекламодатели могут создать учетную запись, выбрать различные параметры для включения в список (штат, опекун и т. Д.) И загрузить изображение, измеряемое в единицах, кратных единице. «Единица» - это изображение или флэш-файл шириной 180px и высотой 120. Рекламодатель может выбрать несколько единиц, которые являются горизонтальными или вертикальными, то есть 2 отдельных элемента, выровненных по горизонтали или 2 отдельных элемента, выровненных по вертикали.

Я дошел до того, что сайт работает нормально. Я застрял в точке, где я собираюсь расположить «единицы» и отобразить их правильно, без какого-либо пустого пространства между ними. Например, если бы у нас было 4 рекламных объявления, горизонтальное рекламное объявление с 2 рекламными блоками, вертикальное рекламное объявление с 2 рекламными блоками и рекламное объявление с 2 рекламными блоками, вот так -

                  |
                  |
   2 unit ad      |   2 
------------------|  unit 
        |         |   ad
1 unit  | 1 unit  | 
        |         |
        |         |

В настоящее время я храню рекламные блоки в базе данных с атрибутами, которые используются в веб-форме для создания таблицы (т. Е. Colspan, rowspan и т. Д.). Я не уверен, что это правильный подход, я боюсь, что это не так. Буду очень признателен, если получу совет.

Спасибо, Инди

Ответы [ 4 ]

2 голосов
/ 10 января 2009

ИМХО таблицы идеально подходят для этой работы, потому что объявления имеют одинаковое поведение rowspan-is и colspan-ish. Если у вас есть метод для генерации правильной таблицы, придерживайтесь его.

Также, когда я создаю таблицу HTML для макета и не хочу, чтобы между ячейками были пробелы, я включаю cellspacing = "0" и cellpadding = "0" атрибуты, например, Leah упоминается.

<table cellspacing="0" cellpadding="0" border="0">

Дополнительный трюк с таблицей:
Чтобы получить однопиксельную границу между ячейками таблицы HTML, используйте

table 
{ 
    border-collapse: collapse; 
}

Свойство CSS.

1 голос
/ 10 января 2009

Так проблема в том, что у вас есть пустое пространство между блоками? Есть ли у вас в таблице cellspacing = "0" и cellpadding = "0"?

т.е.

<table cellspacing="0" cellpadding="0">

Не уверен, как вы храните юниты с атрибутами. Разделение данных и описание интерфейса может означать, что у вас больше гибкости и возможностей для обработки запросов на изменение пользовательского интерфейса. Если атрибуты одинаковы для каждого типа устройства, то, вероятно, хранится много дублированных данных.

0 голосов
/ 10 января 2009

Это сложный вопрос. Если вы хотите использовать div и css, попробуйте разместить рекламу. Единственная проблема заключается в том, что вы не можете рендерить div в произвольном порядке, поскольку они не всегда будут пытаться занять доступную комнату. То же самое было бы верно, если бы вы использовали таблицы.

<html>
<head>
    <style>
        div.adcontainer {
            margin: 0px; width: 540px;
        }
        div.ad {
            float: right; margin: 0; padding: 0; width: 180px;
            height: 120px; background: #DDD;
        }
        div.adhorz {
            width: 360px; height: 120px;
        }
        div.advert {
            width: 180px; height: 240px;
        }
    </style>
</head>
<body>
    <div class="adcontainer">
        <div class="ad advert">ad v</div>
        <div class="ad adhorz">ad h</div>
        <div class="ad">ad 1</div>
        <div class="ad">ad 2</div>
    </div>
</body>
</html>
0 голосов
/ 24 декабря 2008

Вы смотрели какие-нибудь элементы управления TreeMap? Большинство из них будут коммерческими предложениями, но там может быть предложение с открытым исходным кодом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...