Eu tenho uma área de texto simples em um formulário como este:
<textarea style="width:350px; height:80px;" cols="42" rows="5" name="sitelink">
<?php if($siteLink_val) echo $siteLink_val; ?>
</textarea>
Continuo recebendo espaço em branco extra nesta área de texto . Quando abro o cursor, fica no meio da área de texto e não no começo? Qual a explicação?
value
atributo em vez de adicionar texto dentro das tags.Bem, tudo entre
<textarea>
e</textarea>
é usado como o valor padrão para sua caixa de área de texto. Há algum espaço em branco no seu exemplo lá. Tente eliminar tudo isso.fonte
Abra (e feche!) Suas tags PHP logo após e antes, suas
textarea
tags:fonte
Em resumo:
<textarea>
deve ser fechado imediatamente na mesma linha em que foi iniciado.Prática geral: isso adicionará quebras de linha e espaços usados para indentação no código.
Prática correta
fonte
Basicamente, deve ser
Se houver alguns espaços predefinidos, digamos, devido à formatação do código, como abaixo
Os espaços mostrados por pontos continuam aumentando em cada envio.
fonte
Qualquer espaço entre as tags de abertura e fechamento da área de texto será considerado como espaço em branco. Portanto, para o código acima, a maneira correta será:
fonte
Outra solução seria usar javascript:
Foi o que eu fiz. A remoção de espaços em branco e quebras de linha no código torna a linha muito longa.
fonte
Para torná-lo um pouco mais limpo, considere usar o operador ternário:
fonte
Descer ... funciona para mim.
fonte
Eu tenho o mesmo problema e a solução é muito simples: não comece uma nova linha! Embora algumas das respostas anteriores possam resolver o problema, a ideia não é declarada claramente. O entendimento importante é que, para se livrar dos espaços não intencionais, nunca inicie uma nova linha logo após a tag de início.
A maneira a seguir está ERRADA e deixará muitos espaços indesejados antes do conteúdo do texto:
A maneira certa de fazer isso é:
fonte
Por favor, verifique se não há quebra de linha ou espaço depois, é para garantir que não haja espaço em branco ou guia, basta copiar e colar este código :) Eu o corrigi
fonte
Além disso: a tag textarea mostra espaços para novas linhas, guias, etc., no código de múltiplas linhas.
fonte
mantenha o código da área de texto sem espaços em branco adicionais dentro
além disso, se você vir linhas em branco extras, há uma solução na meta linguagem:
ele imprimirá linhas sem linhas em branco adicionais, é claro que depende se suas linhas terminam com '\ n', '\ r \ n' ou '' - adapte
fonte
A área de texto mostra espaços misteriosos porque existe um espaço real nas tags.
<textarea> <php? echo $var; ?> </textarea>
depois de remover esses espaços extras entre as tags, o problema será resolvido da seguinte maneira.<textarea><php? echo $var; ?></textarea>
fonte
Uma solução que funcionou para mim é adicionar o estilo
white-space: normal;
à área de texto, porque às vezes não é possível eliminar todo o espaço em branco (por exemplo, quando você deseja que seu código cumpra suas diretrizes de codificação, que exige a adição de guias, espaços em branco e quebras de linha)Observe que o padrão para a área de texto, pelo menos no chrome, é:
white-space: pre-wrap;
fonte
Se você ainda gosta de usar o recuo, faça-o após abrir a
<?php
tag, da seguinte maneira:fonte
Eu sei que é tarde, mas pode ajudar os outros.
use isso quando for necessário o recuo do documento.
mesma questão
fonte
Sou contra o código HTML misturado com o código PHP.
No entanto, tente o seguinte:
fonte
<textarea style="width:350px; height:80px;" cols="42" rows="5" name="sitelink"><?php
e?></textarea>
garantir que seja verdadeiramente puro. Além disso, posso perguntar por que você é contra HTML com PHP?Apenas defina sua marca e sua marca na mesma linha.
fonte
Além disso, quando você diz que o cursor está no "meio" da área de texto , me faz pensar que você também pode ter preenchimento extra ou alinhamento de texto: centro definido em algum lugar no seu CSS.
fonte
Primeiro, verifique se o seu $ siteLink_val não está retornando espaço em branco como valor. O elemento <textarea>, por padrão, possui um valor vazio; portanto, se a variável que você está ecoando por algum motivo tiver espaços, o problema será imediato.
Para tornar o código o mais limpo possível, sugiro que você faça algo assim, permitindo mais flexibilidade posteriormente. Eu criei uma função que retorna um NULL se a variável não estiver presente (o que você parece estar buscando na postagem original) e o valor absoluto caso contrário. Depois de verificar o conteúdo da sua variável, tente o seguinte:
E o seguinte código em sua área de texto agora seria:
Isso pressupõe que sua instalação do PHP esteja configurada para chamadas variáveis abreviadas, como visto nas tags "<? =?>" Reduzidas. Se você não pode imprimir dessa maneira, lembre-se de preceder seu código PHP com "<? Php" e fechar com "?>".
Evite quebras de linha entre <textarea> 's, pois isso pode criar o potencial de caracteres incorretos.
Além disso, verifique seu CSS para garantir que não haja uma regra de preenchimento pressionando o texto para dentro.
Além disso, você especifica um valor de colunas e linhas na área de texto e, em seguida, denomina uma largura e altura. Essas regras são contraproducentes e resultam em visuais inconsistentes. Continue definindo o tamanho através do estilo (eu recomendo dar uma classe ao elemento) ou as linhas / colunas.
fonte