Jump to content
  • 0

td + overflow


klierik
 Share

Question

Приветствую.

Подскажите как сделать, чтоб контент в одной определенной ячейке не растягивал е?,

а просто пропадал за ее границами?

естественно td {overflow: hidden;} неработает,

может будут альтернативы?

зы: перепробовал кучу способов, пока что ничего не получилось ((

tnx

Link to comment
Share on other sites

14 answers to this question

Recommended Posts

  • 0

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
<title></title>
<style type="text/css">
/*<![CDATA[*/
table {
width: 100%;
table-layout: fixed;
}
.fixed {
width: 100px;
overflow: hidden;
}
p {
white-space: nowrap;
}


/*]]>*/
</style>
</head>

<body>
<table border="1">
<tr>
<td>test</td>
<td class="fixed"><p>test, test, test, test, test</p></td>
<td>test</td>
</tr>
</table>
</body>

</html>

оно ?

Link to comment
Share on other sites

  • 0

table-layout: fixed;

да.. хорошее решение..

все б ничего, только вот при сжатии контент пропадает вне области (((

и min-width организовать невозможно будет (((

так же на td неработает overflow :)

сейчас попробуй объяснить суть...

есть таблица и N-ое кол-во ячеек которые тянут таблицу по высоте.

и есть одна из ячеек содержимое которое может потянуть таблицу

вот надо именно этой ячейке запретить это делать )))

вообще сомневаюсь что вообще это реально сделать )))

Link to comment
Share on other sites

  • 0
и min-width организовать невозможно будет (((

из этого я понял что ячейка должна тянуться, но при сужение должна иметь мин-ширину.

Да скорее всего придеться через JavaScript

так же на td неработает overflow :)

почему ? у меня же работает ))

Link to comment
Share on other sites

  • 0
div"у указать высоту ячейки, тогда хайдиться будет замечательно

а как узнать высоту ячейки :)

они то динамичные ))

почему ? у меня же работает ))

работает.. только не изза overflow

и изза fixed =)

ну или изза того + другое ))

Да скорее всего придеться через JavaScript

в данном конкретном случае это нельзя решить даже средствами JS

так как нет событие которое возникало б при ресайзе таблицы (не путать с ресайзом окна)

как вариант я думаю просто всунуть див с фиксированной шириной.

строиться это все так , что б под всеми, за исключением ИЕ, браузерами работало под xHTML

а под ИЕ оно будет рабоать в QM )))))))

ууу.. злосный проект ))))

и тут грабли в ИЕ просто напросто на каждом шагу (((

к примеру див с фикс. шириной все равно будет растягиваться при новрапе..

ужас )))))

в общем пока что ищу решение )))

Link to comment
Share on other sites

  • 0
как вариант я думаю просто всунуть див с фиксированной шириной.

если я правильно понял идею то это бессмыслено, т.к. у тд будет overflow и при сужение окна он все равно обрежет.

в данном конкретном случае это нельзя решить даже средствами JS

[window.]document.getElementById("elementID").style.width

???

Link to comment
Share on other sites

  • 0
если я правильно понял идею то это бессмыслено, т.к. у тд будет overflow и при сужение окна он все равно обрежет.

при table-layout:fixed ето бессмысленно. а вот без него - нет 8)

[window.]document.getElementById("elementID").style.width

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

А нет такоого события, которое возникало при ресайзе таблицы..

Link to comment
Share on other sites

  • 0

да ведать никак.

на чем заткнулся и уполз под стол.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
<title></title>
<style type="text/css">
/*<![CDATA[*/
table {
width: 100%;
table-layout: fixed;
}
#fixed {
overflow: hidden;
}
p {
white-space: nowrap;
}
/*]]>*/
</style>
<script language="JavaScript" type="text/javascript">
/*<![CDATA[*/
function addCol()
{
var table = document.getElementById("table").getElementsByTagName("TR")[0];
var td1 = document.createElement("TD");

table.appendChild(td1);
td1.innerHTML = "test";
}
/*]]>*/
</script>
</head>

<body>
<table border="1" id="table">
<tr>
<td>test</td>
<td id="fixed"><p>test, test, test, test, test</p></td>
<td>test</td>
</tr>
</table>
<script language="JavaScript" type="text/javascript">
/*<![CDATA[*/
var fix = document.getElementById('fixed').clientWidth;
if (fix < 100)
{
document.getElementById("fixed").style.width = 100 + "px";
document.write("TD id='fixed': " + fix);
}
else
{
document.getElementById("fixed").style.width ="auto";
document.write("TD id='fixed' width : " + fix);
}
/*]]>*/
</script>
<form action="" onsubmit="addCol();return false;">
<input type="submit" value="Добавить" />
</form>
</body>

</html>

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