Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 08.01.2011, 20:41
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от niZE
потому что его много)ну то-есть название пункта великовато))
покажи дизайн
Ответить с цитированием
  #12 (permalink)  
Старый 08.01.2011, 20:48
Интересующийся
Отправить личное сообщение для niZE Посмотреть профиль Найти все сообщения от niZE
 
Регистрация: 31.12.2010
Сообщений: 11

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

x-yuri,
показать,смысле код css?
Ответить с цитированием
  #13 (permalink)  
Старый 08.01.2011, 20:56
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

niZE то о чем вы просте сделать кроссбраузерно, наверно не невозможно, если конечно не создавать пустую форму для подсчета количества строк (но это бредятина, так не делается).

Сообщение от niZE
показать,смысле код css?
все что есть
Ответить с цитированием
  #14 (permalink)  
Старый 08.01.2011, 22:05
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,576

Эта тем полна бреда чуть более чем наполовину.

Товарищу нyжно что-то типа этого:
Обработанный:
<div style="font-size:40px;width:300px;height:45px;overflow:hidden;border:1px solid #000">
Такой вот тут у нас длинный-предлинный текст попался, чтож теперь поделаешь. Сокращать надо бы, но хочется, понимашь, хитрого дизайнерского хода.
</div>
Не обработанный:
<div style="font-size:40px;width:300px;height:45px;overflow:hidden;border:1px solid #000">
Такой вот тут у нас длинный-предлинный текст попался, чтож теперь поделаешь. Сокращать надо бы, но хочется, понимашь, хитрого дизайнерского хода.
</div>
<script type="text/javascript">
var div=document.getElementsByTagName('div')[0],f;
var height=parseInt(div.style.height); //высота блока, если она едина, то лучше задать просто вручную цифрой
while(div.scrollHeight>height&&(f=parseInt(div.style.fontSize)-1)>0)div.style.fontSize=f+'px'; //пока реальныя высота больше назначенной (и font-size>0 - мало ли=) ) уменьшаем размер шрифта на 1px;
</script>


Правильно же это делается тупо обрезкой с добавлением "...".

Последний раз редактировалось Aetae, 08.01.2011 в 22:12.
Ответить с цитированием
  #15 (permalink)  
Старый 08.01.2011, 22:26
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от monolithed
то о чем вы просте сделать кроссбраузерно, наверно не невозможно
а главное, не нужно

Сообщение от niZE
x-yuri,
показать,смысле код css?
картинку или как это выглядит сейчас
Ответить с цитированием
  #16 (permalink)  
Старый 08.01.2011, 22:26
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от Aetae
Товарищу нyжно что-то типа этого:
это ему уж точно не нужно, так текст нестабильный какой-то выходит:

Обработанный:
<div style="font-size:40px;width:300px;height:45px;overflow:hidden;border:1px solid #000">
Такой вот тут у нас длинный-предлинный текст попался, чтож теперь поделаешь. Сокращать надо бы, но хочется, понимашь, хитрого дизайнерского хода.
</div>

О тут не нужно и обрабатывать:
<div style="font-size:40px;width:300px;height:45px;overflow:hidden;border:1px solid #000">
Такой вот тут у нас длинный-предлинный т
</div>

Ну а тут так еще больше текста:
<div style="font-size:40px;width:300px;height:45px;overflow:hidden;border:1px solid #000">
Такой вот тут у нас длинный-предлинный текст попался, чтож теперь поделаешь. Сокращать надо бы, но хочется, понимашь, хитрого дизайнерского хода.............................................................................
</div>

<script type="text/javascript">
var div = document.getElementsByTagName('div'), i = div.length, f;
while(i--){ 
    while(div[i].scrollHeight>parseInt(div[i].style.height)&&(f=parseInt(div[i].style.fontSize)-1)>0){
        div[i].style.fontSize = f+'px';
    }
}
</script>



Сообщение от Aetae
Правильно же это делается тупо обрезкой с добавлением "...".
ну да
Ответить с цитированием
  #17 (permalink)  
Старый 08.01.2011, 22:36
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,576

Сообщение от monolithed Посмотреть сообщение
это ему уж точно не нужно, так текст нестабильный какой-то выходит:
Эээ:
Сообщение от niZE Посмотреть сообщение
monolithed,
так мне не надо что-бы он скрывался,мне нужно что-бы он был виден целиком,я конечно извиняюсь если вы не понимаете то что я пытаюсь сказать.Мне надо что-бы текст уменьшался.Т.е. что-бы я не вручную каждый раз смотрел где там текст вылезает и применял стиль,а что-бы это было автоматизировано,для этого мне надо-бы посчитать строки.
Ответить с цитированием
  #18 (permalink)  
Старый 08.01.2011, 23:13
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

если бы топикстартеры знали, что им нужно, они бы не ходили на форум
Ответить с цитированием
  #19 (permalink)  
Старый 09.01.2011, 01:15
Интересующийся
Отправить личное сообщение для niZE Посмотреть профиль Найти все сообщения от niZE
 
Регистрация: 31.12.2010
Сообщений: 11

спасибо большое за ответы.товарищ Aetae, абсолютно верно меня понял.Однако у меня возникли некоторые трудности:

<style>
#menu_bg ul li a{
	background-image:url(images/menu_punkt.png);
	background-position:top;
	background-repeat:no-repeat;
	height: 45px;
	color: #65b2b6;
	display: block;
	text-decoration:none;
	width: 184px;
	text-align:center;
	line-height:45px;
	cursor:pointer;
	
}
#menu_bg ul li a:hover{
	background-image:url(images/menu_punkt.png);
	background-position:bottom;
	width: 184px;
	height:45px;
}

#menu_bg ul li ul{
	list-style:none;
	width: 100%;
	display: none;
	margin: 0 auto;
	padding: 0;
}

#menu_bg ul li ul li a{
	background-image:none;
	height: 34px;
	color: #65b2b6;
	display: block;
	margin: 0 auto;
	border-left: 1px solid #cfcfa9;
	border-right: 1px solid #cfcfa9;
	background-color: #f2f4d3;
	text-decoration:none;
	font-size:14px;
	overflow:hidden;
	width: 160px;
	text-align:center;
	line-height:34px;
}
#menu_bg ul li ul li a:hover{
	background-image:url(images/menu_onhover.png);
	width: 164px;
	height: 34px;
	font-size: 16px;
}
</style>

<script type='text/javascript'>
divAccor = document.getElementById('menu_bg');
getLi = divAccor.getElementsByClassName('underLi');
for(i=0;i<getLi.length;i++){
var menuA=getLi.item(i).getElementsByTagName('a'),f;
var height=parseInt(34); //высота блока, если она едина, то лучше задать просто вручную цифрой
while(menuA.scrollHeight>height&&(f=parseInt(menuA.style.fontSize)-1)>0)menuA.style.fontSize=f+'px'; //пока реальныя высота больше назначенной (и font-size>0 - мало ли=) ) уменьшаем размер шрифта на 1px;
}
function menuAccordion() {
			var lis = new Array();
			var ulInLi = new Array();
			divAccor = document.getElementById('menu_bg');
			getLi = divAccor.getElementsByTagName('li');
			n = 0;
			k = 0;
				for(i=0;i<getLi.length;i++){
					ulObj=getLi.item(i).getElementsByTagName('ul');
						if(ulObj.length > 0){
						lis[n]=getLi.item(i);
						n++;
						}
				}
				for(i=0;i<lis.length;i++){
					lis[i].onclick = function() {
						for(j=0;j<lis.length;j++){
							if(lis[j].getElementsByTagName('ul').item(0).style.display != this){
								lis[j].getElementsByTagName('ul').item(0).style.display = 'none';				
							}
						}
						ulObj = this.getElementsByTagName('ul').item(0);
							if(ulObj.style.display == 'block'){
								ulObj.style.display = 'none';
							} else {
								ulObj.style.display = 'block';
							}
						mainResize();
						}
					}
		}
</script>

<div id='menu_bg'>
                            <li><a href='index.html'>Главная</a></li>
                            <li><a href='about.html'>О Нас</a></li>
                            <li><a href='javascript: return false'>Услуги</a>
                                <ul>
                                    <li class="underLi"><a href='credit.html'>Кредиты</a></li>
                                    <li class="underLi"><a href='deposit.html'>Депозиты</a></li>
                                    <li class="underLi"><a href='card.html'>Карточки</a></li>
                                </ul>
                            </li>
                            <li><a href='javascript: return false'>Интернет-Банк</a>
                                                            <ul>
                                    <li class="underLi"><a href='calcul.html'>Депозитный Калькулятор</a></li>
                                    <li class="underLi"><a href='klient_bank.html'>Клиент-Банк</a></li>
                                </ul>
                            </li>
                            <li><a href='filia.html'>Филиалы</a></li>
                            <li><a href='partners.html'>Наши Партнёры</a></li>
                        </ul>
                    </div>


Вообщем у меня при преминении кода который мне дал Aetae смещаються стили.Li первого уровня вообще без стиля,а вот Li второго уровня почему-то получают стиль первого уровня.

Последний раз редактировалось niZE, 09.01.2011 в 01:17.
Ответить с цитированием
  #20 (permalink)  
Старый 20.12.2011, 13:25
Новичок на форуме
Отправить личное сообщение для Ваня Посмотреть профиль Найти все сообщения от Ваня
 
Регистрация: 20.12.2011
Сообщений: 1

element.style.height = 'auto'
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
Как определить количество элементов в многомерном массиве Dima00782 Общие вопросы Javascript 3 12.06.2010 14:15
как посчитать сумму выбранных элементов checkbox nikimak92 Общие вопросы Javascript 9 01.06.2010 10:16
Как сделать такое fancy menu uonax Элементы интерфейса 2 22.05.2010 12:52
Как сделать электронный каталог продукции? natarius Серверные языки и технологии 6 24.05.2009 20:56